.gallery.svelte-10fvocm{--bar:3rem;--edge:1rem;z-index:1;color:var(--ink);position:fixed;inset:0}canvas.svelte-10fvocm{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;filter:drop-shadow(0 8px 18px #0000001f);outline:none;width:100%;height:100%;display:block}canvas.svelte-10fvocm:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}.frosted.svelte-10fvocm{border:1px solid var(--hairline);-webkit-backdrop-filter:blur(20px)saturate(1.8);background:#ffffffd1;box-shadow:0 8px 24px #0000000f}.intro.svelte-10fvocm{text-align:center;pointer-events:none;transition:opacity .42s var(--ease-out);place-content:center;gap:.75rem;display:grid;position:absolute;inset:0}.intro.ready.svelte-10fvocm{opacity:0}.intro.svelte-10fvocm strong:where(.svelte-10fvocm){letter-spacing:-.03em;font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.1}.intro.svelte-10fvocm p:where(.svelte-10fvocm){color:var(--muted-ink);margin:0}.tool-rail.svelte-10fvocm{z-index:5;bottom:var(--edge);height:var(--bar);transition:opacity .18s var(--ease-out), visibility .18s;border-radius:999px;align-items:center;gap:.125rem;padding:0 calc(.25rem - 1px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.gallery.open.svelte-10fvocm .tool-rail:where(.svelte-10fvocm){visibility:hidden;opacity:0;pointer-events:none}.tool-button.svelte-10fvocm{width:calc(var(--bar) - .5rem);height:calc(var(--bar) - .5rem);color:var(--muted-ink);cursor:pointer;transition:background .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;text-decoration:none;display:grid}.tool-button[aria-current=page].svelte-10fvocm{background:var(--ink);color:#fff}.tool-button.svelte-10fvocm:hover:not([aria-current=page]){color:var(--ink);background:#0000000d}.tool-divider.svelte-10fvocm{background:var(--hairline);width:1px;height:1.25rem;margin:0 .1875rem;display:block}.tip.svelte-10fvocm{background:var(--ink);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s var(--ease-out);border-radius:.375rem;font-size:.75rem;line-height:1.3;position:absolute;bottom:calc(100% + .625rem);left:0;overflow:hidden}.tip.shown.svelte-10fvocm{opacity:1}.tip.glide.svelte-10fvocm{transition:opacity .15s var(--ease-out), translate .22s var(--ease-out), width .22s var(--ease-out)}.tip-strip.svelte-10fvocm{width:max-content;display:flex}.tip.glide.svelte-10fvocm .tip-strip:where(.svelte-10fvocm){transition:translate .22s var(--ease-out)}.tip-strip.svelte-10fvocm>span:where(.svelte-10fvocm){align-items:center;gap:.375rem;padding:.3125rem .5rem;display:flex}kbd.svelte-10fvocm{font:inherit;border:1px solid #ffffff4d;border-radius:.25rem;padding:0 .25rem;font-size:.6875rem}.hero-hit.svelte-10fvocm{touch-action:none;cursor:grab;background:0 0;border:0;outline:none;padding:0;position:absolute;left:50%;translate:-50% -50%}.hero-hit.svelte-10fvocm:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.caption.svelte-10fvocm{background:var(--paper);box-shadow:0 0 .5rem .25rem var(--paper);grid-template-columns:1fr auto;align-items:baseline;column-gap:1.25rem;margin-top:1rem;font-size:.875rem;line-height:1.5;display:grid;position:absolute;left:50%;translate:-50%}.caption.svelte-10fvocm h2:where(.svelte-10fvocm){-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:1rem;font-weight:400;line-height:1.4;display:-webkit-box;overflow:hidden}.year.svelte-10fvocm{color:var(--muted-ink)}.actions.svelte-10fvocm{grid-column:1/-1;justify-content:space-between;gap:1.25rem;margin-top:.375rem;display:flex}.actions.svelte-10fvocm button:where(.svelte-10fvocm){color:var(--muted-ink);font:inherit;cursor:pointer;transition:color .16s var(--ease-out);background:0 0;border:0;margin-block:-.6875rem;padding:.6875rem 0;text-decoration:none}.actions.svelte-10fvocm button:where(.svelte-10fvocm):hover{color:var(--ink)}.back-link.svelte-10fvocm{box-sizing:content-box;border-radius:.5rem;margin:-.8125rem -.5rem;padding:.8125rem .5rem;transition:background .14s;position:absolute}.back-link.svelte-10fvocm:hover{background:#0000000d}.back-link.svelte-10fvocm:active{background:#0000001a}.bottom-chrome.svelte-10fvocm{z-index:5;transition:opacity .18s var(--ease-out), visibility .18s}.gallery.open.svelte-10fvocm .bottom-chrome:where(.svelte-10fvocm){visibility:hidden;opacity:0;pointer-events:none}.project-index.svelte-10fvocm{left:var(--edge);bottom:var(--edge);position:absolute}.project-index.svelte-10fvocm summary:where(.svelte-10fvocm){height:var(--bar);cursor:pointer;border-radius:999px;align-items:center;gap:.625rem;padding:0 1rem;font-size:.875rem;list-style:none;display:flex}.project-index.svelte-10fvocm summary:where(.svelte-10fvocm)::-webkit-details-marker{display:none}.help.svelte-10fvocm summary:where(.svelte-10fvocm)::-webkit-details-marker{display:none}.summary-count.svelte-10fvocm,.index-caret.svelte-10fvocm{color:var(--muted-ink)}.index-caret.svelte-10fvocm{transition:transform .18s var(--ease-out);place-items:center;display:grid}.project-index[open].svelte-10fvocm .index-caret:where(.svelte-10fvocm){transform:rotate(180deg)}.project-index.svelte-10fvocm nav:where(.svelte-10fvocm){width:min(24rem, calc(100vw - 2 * var(--edge)));overscroll-behavior:contain;border-radius:1rem;max-height:min(62vh,34rem);padding:.5rem;display:grid;position:absolute;bottom:calc(100% + .5rem);left:0;overflow:auto}.index-heading.svelte-10fvocm,.help-popover.svelte-10fvocm strong:where(.svelte-10fvocm){color:var(--muted-ink);letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:400;line-height:1.6}.index-heading.svelte-10fvocm{justify-content:space-between;gap:1rem;padding:.5rem .625rem;display:flex}.index-heading.svelte-10fvocm strong:where(.svelte-10fvocm){font-weight:inherit}.project-index.svelte-10fvocm nav:where(.svelte-10fvocm) a:where(.svelte-10fvocm){color:var(--ink);border-radius:.5rem;grid-template-columns:1.5rem 1fr auto;align-items:baseline;gap:.75rem;padding:.5625rem .625rem;font-size:.875rem;line-height:1.4;text-decoration:none;transition:background .14s;display:grid}.project-index.svelte-10fvocm nav:where(.svelte-10fvocm) a:where(.svelte-10fvocm):hover{background:#0000000d}.project-index.svelte-10fvocm nav:where(.svelte-10fvocm) a:where(.svelte-10fvocm)>span:where(.svelte-10fvocm){color:var(--muted-ink);font-size:.75rem}.project-index.svelte-10fvocm nav:where(.svelte-10fvocm) a:where(.svelte-10fvocm)>strong:where(.svelte-10fvocm){font-weight:400}.gallery-status.svelte-10fvocm{right:var(--edge);bottom:var(--edge);position:absolute}.help.svelte-10fvocm{position:relative}.help.svelte-10fvocm summary:where(.svelte-10fvocm){width:var(--bar);height:var(--bar);color:var(--muted-ink);cursor:pointer;transition:color .16s var(--ease-out);border-radius:50%;place-items:center;list-style:none;display:grid}.help.svelte-10fvocm summary:where(.svelte-10fvocm):hover,.help[open].svelte-10fvocm summary:where(.svelte-10fvocm){color:var(--ink)}.help-popover.svelte-10fvocm{width:min(17rem, calc(100vw - 2 * var(--edge)));border-radius:1rem;gap:.375rem;padding:1rem;display:grid;position:absolute;bottom:calc(100% + .5rem);right:0}.help-popover.svelte-10fvocm p:where(.svelte-10fvocm),.help-popover.svelte-10fvocm span:where(.svelte-10fvocm){color:var(--ink);margin:0;font-size:.8125rem;line-height:1.5}.tool-button.svelte-10fvocm:active,.project-index.svelte-10fvocm summary:where(.svelte-10fvocm):active,.project-index.svelte-10fvocm nav:where(.svelte-10fvocm) a:where(.svelte-10fvocm):active,.help.svelte-10fvocm summary:where(.svelte-10fvocm):active,.actions.svelte-10fvocm button:where(.svelte-10fvocm):active{opacity:.55}.tool-button.svelte-10fvocm:focus-visible,.project-index.svelte-10fvocm summary:where(.svelte-10fvocm):focus-visible,.project-index.svelte-10fvocm nav:where(.svelte-10fvocm) a:where(.svelte-10fvocm):focus-visible,.help.svelte-10fvocm summary:where(.svelte-10fvocm):focus-visible,.actions.svelte-10fvocm button:where(.svelte-10fvocm):focus-visible,.back-link.svelte-10fvocm:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion:reduce){.intro.svelte-10fvocm,.tool-button.svelte-10fvocm,.index-caret.svelte-10fvocm,.help.svelte-10fvocm summary:where(.svelte-10fvocm),.actions.svelte-10fvocm button:where(.svelte-10fvocm),.back-link.svelte-10fvocm,.bottom-chrome.svelte-10fvocm{transition:none}}@media (width<=840px){.gallery.svelte-10fvocm{--bar:2.75rem;--edge:.75rem}.intro.svelte-10fvocm{padding:0 1rem}.tool-rail.svelte-10fvocm{bottom:calc(var(--edge) + env(safe-area-inset-bottom));gap:0}.project-index.svelte-10fvocm,.gallery-status.svelte-10fvocm{bottom:calc(var(--edge) + env(safe-area-inset-bottom))}.project-index.svelte-10fvocm summary:where(.svelte-10fvocm){width:var(--bar);justify-content:center;padding:0}.summary-label.svelte-10fvocm,.summary-count.svelte-10fvocm,.index-caret.svelte-10fvocm{display:none}}@media (width<=368px){.project-index.svelte-10fvocm,.gallery-status.svelte-10fvocm{bottom:calc(var(--edge) * 2 + var(--bar) + env(safe-area-inset-bottom))}}@media (prefers-reduced-transparency:reduce){.frosted.svelte-10fvocm{-webkit-backdrop-filter:none;background:#fff}}@media (prefers-contrast:more){.frosted.svelte-10fvocm{border-color:var(--ink)}}
