.map{position:relative;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;outline:none;cursor:grab;background-color:#f4f1ea}.map.is-dragging{cursor:grabbing}.map.is-over-link{cursor:pointer}.map-backdrop,.map-canvas,.map-world,.map-fx{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.map-fx{width:100%;height:100%}.map-world{inset:auto;left:0;top:0;width:0;height:0;transform-origin:0 0}[hidden]{display:none!important}.node{position:absolute;box-sizing:border-box;overflow:hidden}.node-text,.node-gif,.node-video,.node-pdf{pointer-events:auto}.node-text{color:var(--site-text-color, var(--on-background, inherit));user-select:text;-webkit-user-select:text;font-family:var(--font-body, Georgia, "Times New Roman", serif);line-height:1.4}.node-gif img,.node-gif canvas{display:block;width:100%;height:100%;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.node-pdf{container-type:size;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4cqmin;padding:4cqmin;box-sizing:border-box;cursor:pointer;user-select:none;-webkit-user-select:none;color:var(--pdf-ink, #111);font-family:var(--font-body, Georgia, "Times New Roman", serif)}.pdf-icon{flex:1 1 auto;min-height:0;width:100%;max-height:70cqh}.pdf-sheet{fill:#fff;stroke:currentColor;stroke-width:2.5;stroke-linejoin:round}.pdf-fold{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linejoin:round}.pdf-lines{stroke:currentColor;stroke-width:2;stroke-linecap:round;opacity:.35}.pdf-band{fill:var(--pdf-accent, #ff5a2c)}.pdf-label{fill:#fff;font:900 10px/1 system-ui,sans-serif;letter-spacing:.04em}.pdf-title{max-width:100%;font-size:clamp(8px,9cqmin,64px);line-height:1.2;text-align:center;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.node-pdf:hover .pdf-sheet{fill:#fff4ef}.node-pdf.is-broken{opacity:.4}.node-model{container-type:size;pointer-events:auto}.node-model canvas{position:absolute;display:block;left:0;top:0;width:100%;height:100%}.model-status{position:absolute;top:0;right:0;bottom:0;left:0;display:none;place-items:center;padding:8%;color:#666;font:14px/1.4 system-ui,sans-serif;text-align:center}.node-model.is-loading .model-status,.node-model.is-broken .model-status{display:grid}.node-model.is-broken{background:#0000000a}.model-spinner{width:clamp(16px,12cqmin,48px);aspect-ratio:1;border:3px solid rgb(0 0 0 / .12);border-top-color:#2f6fed;border-radius:50%;animation:model-spin .9s linear infinite}@keyframes model-spin{to{rotate:1turn}}@media(prefers-reduced-motion:reduce){.model-spinner{animation-duration:3s}}.node-caption{position:absolute;box-sizing:border-box;margin:0;padding-top:.4em;color:var(--site-text-color, var(--on-background, #1b1b1b));font-family:var(--font-body, Georgia, "Times New Roman", serif);font-size:calc(var(--caption-width) * var(--caption-scale, .03));line-height:1.3;text-align:left;overflow-wrap:anywhere;pointer-events:none}.node-gallery{pointer-events:auto}.node-gallery.is-waiting{visibility:hidden}.gallery{container-type:size;display:flex;flex-direction:column;background:#1b1b1b;color:#fff;font:600 clamp(6px,3cqmin,28px) / 1 system-ui,sans-serif}@media(pointer:coarse){.gallery{font-size:clamp(6px,4.5cqmin,28px)}}.gallery-stage{position:relative;flex:1;min-height:0;overflow:hidden}.gallery-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;visibility:hidden;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.gallery--cover .gallery-image{object-fit:cover}.gallery-image.is-current,.gallery-image.is-incoming{visibility:visible}.gallery-image.is-incoming{z-index:1}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:.6em;padding:.4em}.gallery-button{display:inline-grid;place-items:center;width:2.2em;height:2.2em;padding:0;border:0;border-radius:50%;background:#ffffff24;color:inherit;font:inherit;cursor:pointer}.gallery-button svg{width:60%;height:60%}.gallery-button:hover{background:#ffffff47}.gallery-button:focus-visible{outline:.12em solid #fff;outline-offset:.12em}.gallery-button:disabled{opacity:.3;cursor:default}.gallery-button[hidden]{display:none}.gallery-counter{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.gallery--nav-top .gallery-controls{order:-1}.gallery--nav-sides .gallery-controls,.gallery--nav-none .gallery-controls{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;justify-content:space-between;align-items:center;padding:0 .6em;pointer-events:none}.gallery--nav-sides .gallery-button,.gallery--nav-none .gallery-button{pointer-events:auto;background:#1414148c}.gallery--nav-sides .gallery-play,.gallery--nav-none .gallery-play{position:absolute;bottom:.6em}.gallery--nav-sides .gallery-play,.gallery--nav-none .gallery-play{right:.6em}.gallery--nav-none .gallery-button:not(.gallery-play){display:none}.node-video{border-radius:6px;background:#121216}.video-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:6%;border:0;background:#121216 center / cover no-repeat;color:#fff;font:600 18px/1.25 system-ui,sans-serif;text-align:center;text-shadow:0 1px 4px rgb(0 0 0 / .8);cursor:pointer}.video-placeholder:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#00000026,#0000008c)}.video-placeholder>*{position:relative}.video-play{width:64px;height:64px;border-radius:50%;background:#ffffffeb;clip-path:circle()}.video-play:after{content:"";position:absolute;left:26px;top:20px;border:solid transparent;border-width:12px 0 12px 20px;border-left-color:#121216}.video-placeholder:is(:hover,:focus-visible) .video-play{background:#fff}.video-placeholder:focus-visible{outline:3px solid #2f6fed;outline-offset:-3px}.video-title{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-provider{font-size:13px;font-weight:400;opacity:.7}.video-frame{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.site-footer{position:fixed;z-index:10;right:calc(max(16px,env(safe-area-inset-right)) + 48px);bottom:max(16px,env(safe-area-inset-bottom));box-sizing:border-box;max-width:calc(100vw - max(16px,env(safe-area-inset-right)) - 64px);margin:0;padding:4px 8px;border-radius:6px;font:13px/1.4 var(--font-body, system-ui, sans-serif);overflow-wrap:anywhere}a.site-footer{text-decoration:underline;text-underline-offset:2px}a.site-footer:focus-visible{outline:2px solid #2f6fed;outline-offset:2px}.rich-text{white-space:pre-wrap;overflow-wrap:break-word}.rich-text :is(p,h1,h2,h3,ul,ol,blockquote,pre){margin:0 0 .5em}.rich-text>:last-child{margin-bottom:0}.rich-text :is(h1,h2,h3){font-family:var(--font-title, inherit)}.rich-text h1{font-size:2em;line-height:1.15}.rich-text h2{font-size:1.5em;line-height:1.2}.rich-text h3{font-size:1.2em;line-height:1.25}.rich-text :is(ul,ol){padding-left:1.4em}.rich-text blockquote{padding-left:.8em;border-left:3px solid rgb(0 0 0 / .2);font-style:italic}.rich-text code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em;padding:.1em .3em;border-radius:3px;background:#00000012}.rich-text pre{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em;padding:.6em .8em;border-radius:4px;background:#00000012}.rich-text pre code{padding:0;background:none}.rich-text a[href]{color:var(--node-link-color, var(--link-color, #2f6fed));text-decoration:var(--link-decoration, underline);text-decoration-color:var(--link-underline-color, currentColor)}html,body{margin:0;height:100%;overflow:hidden;font-family:system-ui,sans-serif}#map{position:fixed;top:0;right:0;bottom:0;left:0}#map .node-text{cursor:text}#map .node-text a[href]{cursor:pointer}.controls{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:grid;gap:6px}.controls button{width:40px;height:40px;border:0;border-radius:10px;background:#ffffffe6;color:#222;font:20px/1 system-ui,sans-serif;box-shadow:0 1px 3px #00000026;cursor:pointer}.controls button:hover{background:#fff}.controls button:focus-visible{outline:2px solid #2f6fed;outline-offset:2px}.message{position:fixed;left:50%;top:40%;translate:-50% 0;margin:0;padding:12px 18px;border-radius:8px;background:#fff;color:#333;box-shadow:0 2px 10px #00000026}
