.work-gallery[data-v-169d6160]{color:var(--text-primary);scroll-margin-top:calc(var(--nav-height) + var(--space-md));padding-bottom:var(--section-space)}.scene-nav[data-v-169d6160]{gap:var(--space-lg);border-bottom:1px solid var(--border-color);padding:var(--space-sm);scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;display:flex;overflow-x:auto}.scene-nav button[data-v-169d6160]{box-shadow:none;padding:var(--space-sm) 0;min-height:var(--control-height);white-space:nowrap;font:inherit;font-size:var(--font-size-nav);color:var(--text-secondary);cursor:pointer;transition:color var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:0}.scene-nav button[data-v-169d6160]:hover{color:var(--text-primary)}.scene-nav button.active[data-v-169d6160]{color:var(--brand-ink);box-shadow:inset 0 -2px 0 var(--brand-ink)}.scene-nav sup[data-v-169d6160]{font-size:var(--font-size-label);margin-left:var(--space-xs);color:var(--text-tertiary)}.scene-nav button.active sup[data-v-169d6160]{color:var(--brand-amber)}.gallery-topline[data-v-169d6160]{justify-content:space-between;gap:var(--space-md);margin:var(--space-xl) 0 var(--space-md);font-size:var(--font-size-label);letter-spacing:var(--tracking-label);color:var(--text-tertiary);display:flex}.gallery-stage[data-v-169d6160]{background:linear-gradient(165deg, var(--bg-muted) 0%, var(--bg-base) 55%, var(--bg-muted) 100%);outline-offset:var(--focus-offset);position:relative}.gallery-stage img[data-v-169d6160]{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;filter:drop-shadow(0 12px 32px var(--shadow-color))}.visual-button[data-v-169d6160]{width:100%;height:clamp(380px,49vw,670px);padding:var(--space-xl) 8%;cursor:zoom-in;background:linear-gradient(165deg, var(--bg-muted) 0%, var(--bg-base) 60%, var(--bg-muted) 100%);border:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.visual-button[data-v-169d6160]:disabled{cursor:default}.visual-button img[data-v-169d6160]{object-fit:contain;width:100%;height:100%;filter:drop-shadow(0 12px 18px var(--shadow-hover));transition:transform var(--duration-slow) var(--ease-out);display:block}.visual-button:hover img[data-v-169d6160]{transform:scale(1.025)}.brand-visual[data-v-169d6160]{background:linear-gradient(165deg, var(--bg-muted) 0%, var(--bg-surface) 100%)}.brand-visual img[data-v-169d6160]{filter:none;max-width:62%;max-height:75%}.image-caption[data-v-169d6160]{left:var(--space-xl);right:var(--space-xl);bottom:var(--space-lg);font-size:var(--font-size-label);letter-spacing:var(--tracking-label);color:var(--text-secondary);pointer-events:none;justify-content:space-between;display:flex;position:absolute}.image-caption span[data-v-169d6160]{font-size:var(--font-size-body-lg);line-height:1}.stage-controls[data-v-169d6160]{right:var(--space-lg);top:var(--space-lg);gap:var(--space-sm);display:flex;position:absolute}.stage-controls button[data-v-169d6160]{min-width:var(--control-height);min-height:var(--control-height);background:var(--bg-surface);color:var(--brand-ink);border:1px solid var(--border-strong);border-radius:var(--radius-full);font-size:var(--font-size-body-lg);cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;line-height:1;display:inline-flex}.stage-controls button[data-v-169d6160]:hover{background:var(--brand-ink);border-color:var(--brand-ink);color:var(--text-inverse)}.work-details[data-v-169d6160]{gap:var(--space-2xl);padding:var(--space-xl) 0;border-bottom:1px solid var(--border-color);grid-template-columns:1fr 1fr;display:grid}.project-type[data-v-169d6160]{font-size:var(--font-size-label);color:var(--text-tertiary);letter-spacing:var(--tracking-label);margin:0 0 var(--space-md)}.project-heading h2[data-v-169d6160]{font-size:var(--font-size-title);line-height:var(--leading-heading);letter-spacing:var(--tracking-tight);font-weight:var(--weight-medium);margin:0 0 var(--space-md)}.tags[data-v-169d6160]{gap:var(--space-sm);font-size:var(--font-size-small);color:var(--text-secondary);flex-wrap:wrap;display:flex}.project-copy>p[data-v-169d6160]{font-size:var(--font-size-body);line-height:var(--leading-body);margin:0 0 var(--space-lg);color:var(--text-secondary);max-width:var(--measure-copy)}.project-actions[data-v-169d6160]{align-items:center;gap:var(--space-lg);flex-wrap:wrap;display:flex}.project-actions a[data-v-169d6160],.detail-toggle[data-v-169d6160]{color:var(--brand-ink);font-size:var(--font-size-small);padding:var(--space-sm) 0;min-height:var(--control-height);cursor:pointer;background:0 0;border:0;text-decoration:none}.project-actions a[data-v-169d6160]:first-child{border-bottom:1px solid var(--brand-ink)}.project-actions a[data-v-169d6160]:hover,.detail-toggle[data-v-169d6160]:hover{color:var(--brand-ink-hover)}.technical-details[data-v-169d6160]{padding:var(--space-xl) 0;border-bottom:1px solid var(--border-color);font-size:var(--font-size-small);gap:var(--space-md);display:grid}.technical-details>div[data-v-169d6160]{gap:var(--space-lg);flex-wrap:wrap;align-items:center;display:flex}.technical-details span[data-v-169d6160]{font-size:var(--font-size-label);letter-spacing:var(--tracking-label);min-width:100px;color:var(--text-tertiary)}.technical-details a[data-v-169d6160]{color:var(--brand-ink);overflow-wrap:anywhere}.install code[data-v-169d6160]{font-family:var(--font-mono);font-size:var(--font-size-small);color:var(--text-secondary)}.install button[data-v-169d6160]{background:var(--brand-ink);color:var(--text-inverse);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);min-height:var(--control-height);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);border:0}.install button[data-v-169d6160]:hover{background:var(--brand-ink-hover)}.filmstrip-head[data-v-169d6160]{justify-content:space-between;gap:var(--space-lg);margin:var(--space-xl) 0 var(--space-md);font-size:var(--font-size-label);letter-spacing:var(--tracking-label);color:var(--text-tertiary);display:flex}.filmstrip[data-v-169d6160]{gap:var(--space-lg);padding:var(--space-sm) var(--space-sm) var(--space-lg);scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;display:flex;overflow-x:auto}.filmstrip>button[data-v-169d6160]{text-align:left;cursor:pointer;color:var(--text-primary);scroll-snap-align:center;background:0 0;border:0;flex:0 0 180px;padding:0}.thumb-image[data-v-169d6160]{background:var(--bg-muted);border-radius:var(--radius-xs);height:112px;transition:border-color var(--duration-fast) var(--ease-out);border:2px solid #0000;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.thumb-image img[data-v-169d6160]{object-fit:contain;width:100%;height:100%;padding:var(--space-sm);transition:transform var(--duration-normal) var(--ease-out)}.thumb-image>span[data-v-169d6160]{padding:var(--space-md);font-size:var(--font-size-body);color:var(--text-secondary);text-align:center}.thumb-image i[data-v-169d6160]{bottom:var(--space-xs);left:var(--space-xs);font-size:var(--font-size-label);background:var(--bg-surface);color:var(--text-secondary);padding:2px var(--space-xs);font-style:normal;position:absolute}.filmstrip>button:hover .thumb-image[data-v-169d6160]{border-color:var(--border-strong)}.filmstrip>button:hover img[data-v-169d6160]{transform:scale(1.06)}.selected .thumb-image[data-v-169d6160]{border-color:var(--brand-ink)}.thumb-title[data-v-169d6160]{font-size:var(--font-size-small);margin-top:var(--space-sm);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.visual-fallback[data-v-169d6160]{gap:var(--space-lg);text-align:left;flex-direction:column;width:100%;display:flex}.visual-fallback strong[data-v-169d6160]{font-size:var(--font-size-display);max-width:750px;font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight)}.visual-fallback>span[data-v-169d6160]{font-size:var(--font-size-small);color:var(--text-secondary)}.fallback-label[data-v-169d6160]{letter-spacing:var(--tracking-label)}.empty-state[data-v-169d6160]{padding:var(--section-space) 0;color:var(--text-secondary)}.empty-state button[data-v-169d6160]{background:var(--brand-ink);color:var(--text-inverse);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);min-height:var(--control-height);cursor:pointer;border:0;margin-inline-start:var(--space-sm)}.image-dialog[data-v-169d6160]{background:var(--bg-base);padding:calc(var(--control-height) + var(--space-xl)) var(--space-lg) var(--space-md);max-width:94vw;max-height:94dvh;color:var(--text-primary);border:0}.image-dialog[data-v-169d6160]::backdrop{background:var(--overlay-backdrop)}.image-dialog img[data-v-169d6160]{object-fit:contain;max-width:88vw;max-height:78dvh;margin:auto;display:block}.image-dialog p[data-v-169d6160]{font-size:var(--font-size-small);color:var(--text-secondary);margin:var(--space-md) 0 0}.close-preview[data-v-169d6160]{top:var(--space-md);right:var(--space-lg);font-size:var(--font-size-small);min-height:var(--control-height);padding:var(--space-xs) var(--space-xs);cursor:pointer;color:inherit;background:0 0;border:0;position:absolute}button[data-v-169d6160]:focus-visible,a[data-v-169d6160]:focus-visible,.gallery-stage[data-v-169d6160]:focus-visible{outline:var(--focus-width) solid var(--brand-ink);outline-offset:var(--focus-offset)}@media (width>=1500px){.visual-button[data-v-169d6160]{height:650px}}@media (width<=700px){.scene-nav[data-v-169d6160]{gap:var(--space-lg)}.gallery-topline[data-v-169d6160]{font-size:var(--font-size-label);margin-top:var(--space-lg)}.visual-button[data-v-169d6160]{height:340px;padding:var(--space-xl) var(--space-md)}.brand-visual img[data-v-169d6160]{max-width:85%;max-height:70%}.image-caption[data-v-169d6160]{left:var(--space-md);right:var(--space-md);font-size:var(--font-size-label);bottom:var(--space-md)}.stage-controls[data-v-169d6160]{top:var(--space-md);right:var(--space-md)}.work-details[data-v-169d6160]{gap:var(--space-lg);padding:var(--space-lg) 0;grid-template-columns:1fr}.project-actions[data-v-169d6160]{gap:var(--space-lg)}.filmstrip-head span[data-v-169d6160]:last-child{text-align:right;max-width:180px;line-height:var(--leading-compact)}.filmstrip>button[data-v-169d6160]{flex-basis:145px}.thumb-image[data-v-169d6160]{height:95px}.technical-details span[data-v-169d6160]{min-width:75px}.technical-details>div[data-v-169d6160]{gap:var(--space-md)}.visual-fallback[data-v-169d6160]{padding:var(--space-md)}.visual-fallback strong[data-v-169d6160]{font-size:var(--font-size-title)}}@media (prefers-reduced-motion:reduce){.visual-button img[data-v-169d6160],.thumb-image img[data-v-169d6160]{transition:none}.filmstrip[data-v-169d6160]{scroll-behavior:auto}}button[data-v-169d6160]:active:not(:disabled),.project-actions a[data-v-169d6160]:active{transform:translateY(var(--press-offset))}.install code[data-v-169d6160],.project-heading[data-v-169d6160]{overflow-wrap:anywhere;min-width:0}.projects-page[data-v-e71089aa]{background:var(--bg-base);color:var(--text-primary);padding-bottom:var(--section-space)}.projects-intro[data-v-e71089aa]{padding-top:var(--section-space-tight);padding-bottom:var(--space-2xl)}.eyebrow[data-v-e71089aa]{color:var(--brand-amber);font-size:var(--font-size-label);letter-spacing:var(--tracking-label);margin:0 0 var(--space-lg)}.intro-line[data-v-e71089aa]{justify-content:space-between;align-items:flex-end;gap:var(--space-2xl);display:flex}h1[data-v-e71089aa]{font-size:var(--font-size-display);line-height:var(--leading-heading);letter-spacing:var(--tracking-tight);font-weight:var(--weight-medium);margin:0}.intro-line p[data-v-e71089aa]{max-width:34ch;line-height:var(--leading-body);font-size:var(--font-size-body);color:var(--text-secondary);margin:0}@media (width<=700px){.intro-line[data-v-e71089aa]{align-items:flex-start;gap:var(--space-lg);flex-direction:column}.intro-line p[data-v-e71089aa]{max-width:var(--measure-copy)}}
