@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-vietnamese-wght-normal-XAtsl5Q_.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-ext-wght-normal-C4zznr8T.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-wght-normal-E0tuGl4L.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/martian-mono-cyrillic-400-normal-BCR-5knY.woff2) format("woff2"),url(/assets/martian-mono-cyrillic-400-normal-Br6HGNtH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/martian-mono-latin-ext-400-normal-CqsZQCXg.woff2) format("woff2"),url(/assets/martian-mono-latin-ext-400-normal-CBFElp5P.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Martian Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/martian-mono-latin-400-normal-DZsjfPjH.woff2) format("woff2"),url(/assets/martian-mono-latin-400-normal-DM4nBGIh.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}/*!
* Photo Sphere Viewer 5.15.1
* @copyright 2014-2015 Jérémy Heleine
* @copyright 2015-2026 Damien "Mistic" Sorel
* @licence MIT (https://opensource.org/licenses/MIT)
*/.psv-container{--psv-core-loaded: true;container-name:psv-container;container-type:size;width:100%;height:100%;margin:0;padding:0;position:relative;background:radial-gradient(#fff,#fdfdfd 16%,#fbfbfb 33%,#f8f8f8 49%,#efefef 66%,#dfdfdf 82%,#bfbfbf);overflow:hidden}.psv-container *{box-sizing:content-box}.psv-canvas-container{position:absolute;top:0;left:0;z-index:0;transition:opacity linear .1s}.psv-fullscreen-emulation{position:fixed!important;top:0!important;left:0!important;width:100%!important;height:100%!important;z-index:9999}.psv-loader-container{display:flex;align-items:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;z-index:80}.psv-loader{--psv-loader-border: 3px;--psv-loader-tickness: 10px;position:relative;display:flex;justify-content:center;align-items:center;color:#ffffffb3;width:150px;height:150px}.psv-loader-canvas{position:absolute;top:0;left:0;width:100%;height:100%;color:#3d3d3d80;z-index:-1}.psv-loader-text{font:600 16px sans-serif;text-align:center}.psv-loader--undefined .psv-loader-canvas{animation:psv-loader 2s cubic-bezier(.75,.25,.25,.75) infinite}@keyframes psv-loader{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.psv-navbar{display:flex;position:absolute;z-index:90;bottom:-40px;left:0;width:100%;height:40px;background:#3d3d3d80;transition:bottom ease-in-out .1s;font:16px sans-serif;cursor:default}.psv-navbar--open{bottom:0}.psv-navbar,.psv-navbar *{box-sizing:content-box}.psv-button{flex:0 0 auto;padding:10px;position:relative;cursor:pointer;height:20px;width:20px;background:transparent;color:#ffffffb3}.psv-button--active{background:#fff3}.psv-button--disabled{pointer-events:none;opacity:.5}.psv-button-svg{width:100%;transform:scale(1);transition:transform .2s ease;vertical-align:initial}.psv-button:not(.psv-button--disabled):focus-visible{outline:2px solid #007cff;outline-offset:-2px}.psv-container:not(.psv--is-touch) .psv-button--hover-scale:not(.psv-button--disabled):hover .psv-button-svg{transform:scale(1.2)}.psv-move-button+.psv-move-button{margin-left:-10px}.psv-download-button{color:#ffffffb3!important;text-decoration:none!important}.psv-download-button:before,.psv-download-button:after{display:none!important}.psv-custom-button{width:auto;min-width:20px}.psv-custom-button--no-padding{padding:0;height:100%}.psv-caption{flex:1 1 100%;color:#ffffffb3;overflow:hidden;text-align:center;cursor:unset;padding:unset;height:unset;width:unset}.psv-caption-content{display:inline-block;padding:10px;white-space:nowrap}.psv-zoom-range.psv-button{width:80px;height:1px;margin:10px 0;padding:9.5px 0;max-width:600px}.psv-zoom-range-line{position:relative;width:80px;height:1px;background:#ffffffb3;transition:all .3s ease}.psv-zoom-range-handle{position:absolute;border-radius:50%;top:-3px;width:7px;height:7px;background:#ffffffb3;transform:scale(1);transition:transform .3s ease}.psv-zoom-range:not(.psv-button--disabled):hover .psv-zoom-range-line{box-shadow:0 0 2px #ffffffb3}.psv-zoom-range:not(.psv-button--disabled):hover .psv-zoom-range-handle{transform:scale(1.3)}.psv-notification{position:absolute;z-index:100;bottom:-40px;display:flex;justify-content:center;box-sizing:border-box;width:100%;padding:0 2em;opacity:0;transition-property:opacity,bottom;transition-timing-function:ease-in-out;transition-duration:.2s}.psv-notification-content{max-width:50em;background:#3d3d3dcc;border-radius:4px;padding:.5em 1em;font:14px sans-serif;color:#fff}.psv-notification--visible{opacity:100;bottom:80px}.psv-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;z-index:110;inset:0;background:radial-gradient(#fff,#fdfdfd 16%,#fbfbfb 33%,#f8f8f8 49%,#efefef 66%,#dfdfdf 82%,#bfbfbf);opacity:.8;cursor:default}.psv-overlay-image{width:100%;text-align:center;color:#303030}.psv-overlay-image svg{width:50%}@container psv-container (orientation: landscape){.psv-overlay-image svg{width:33%}}.psv-overlay-title{color:#000;margin-top:1em;font:30px sans-serif;text-align:center}.psv-overlay-text{color:#000c;font:20px sans-serif;opacity:.8;text-align:center}.psv-panel{position:absolute;z-index:90;right:0;height:100%;width:400px;max-width:calc(100% - 9px);background:#0a0a0ab3;transform:translate3d(100%,0,0);opacity:0;transition-property:opacity,transform;transition-timing-function:ease-in-out;transition-duration:.1s;cursor:default;margin-left:9px}.psv--has-navbar .psv-panel{height:calc(100% - 40px)}.psv-panel-close-button{display:none;position:absolute;top:-1px;right:0;width:19.2px;height:19.2px;padding:6.4px;background:transparent;color:#fff;transition:background .3s ease-in-out;cursor:pointer}.psv-panel-close-button svg{transition:transform .3s ease-in-out}.psv-panel-close-button:hover{background:#000000e6}.psv-panel-close-button:hover svg{transform:scale(-1)}.psv-panel-resizer{display:none;position:absolute;top:0;left:-9px;width:9px;height:100%;background-color:#000000e6;cursor:col-resize}.psv-panel-resizer:before{content:"";position:absolute;top:50%;left:5.5px;margin-top:-14.5px;width:1px;height:1px;box-shadow:1px 0 #fff,3px 0 #fff,5px 0 #fff,1px 2px #fff,3px 2px #fff,5px 2px #fff,1px 4px #fff,3px 4px #fff,5px 4px #fff,1px 6px #fff,3px 6px #fff,5px 6px #fff,1px 8px #fff,3px 8px #fff,5px 8px #fff,1px 10px #fff,3px 10px #fff,5px 10px #fff,1px 12px #fff,3px 12px #fff,5px 12px #fff,1px 14px #fff,3px 14px #fff,5px 14px #fff,1px 16px #fff,3px 16px #fff,5px 16px #fff,1px 18px #fff,3px 18px #fff,5px 18px #fff,1px 20px #fff,3px 20px #fff,5px 20px #fff,1px 22px #fff,3px 22px #fff,5px 22px #fff,1px 24px #fff,3px 24px #fff,5px 24px #fff,1px 26px #fff,3px 26px #fff,5px 26px #fff,1px 28px #fff,3px 28px #fff,5px 28px #fff;background:transparent}.psv-panel-content{width:100%;height:100%;box-sizing:border-box;color:#dcdcdc;font:16px sans-serif;overflow:auto}.psv-panel-content:not(.psv-panel-content--no-margin){padding:1em}.psv-panel-content--no-interaction{user-select:none;pointer-events:none}.psv-panel--open{transform:translateZ(0);opacity:1;transition-duration:.2s}.psv-panel--open .psv-panel-close-button,.psv-panel--open .psv-panel-resizer{display:block}@container psv-container (max-width: 400px){.psv-panel{width:100%!important;max-width:none}.psv-panel-resizer{display:none!important}}.psv-panel-menu{height:100%;display:flex;flex-direction:column}.psv-panel-menu-title{flex:none;display:flex;align-items:center;font:24px sans-serif;margin:24px 12px}.psv-panel-menu-title svg{width:24px;height:24px;margin-right:12px}.psv-panel-menu-list{flex:1;list-style:none;margin:0;padding:0;overflow-x:hidden}.psv-panel-menu-item{min-height:1.5em;padding:.5em 1em;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;transition:background .1s ease-in-out}.psv-panel-menu-item--active{outline:1px solid currentcolor;outline-offset:-1px}.psv-panel-menu-item-icon{flex:none;height:1.5em;width:1.5em;margin-right:.5em}.psv-panel-menu-item-icon img{max-width:100%;max-height:100%}.psv-panel-menu-item-icon svg{width:100%;height:100%}.psv-panel-menu-item:focus-visible{outline:2px solid #007cff;outline-offset:-2px}.psv-panel-menu--stripped .psv-panel-menu-item:hover{background:#fff3}.psv-panel-menu--stripped .psv-panel-menu-item:nth-child(odd),.psv-panel-menu--stripped .psv-panel-menu-item:nth-child(odd):before{background:#ffffff1a}.psv-panel-menu--stripped .psv-panel-menu-item:nth-child(2n),.psv-panel-menu--stripped .psv-panel-menu-item:nth-child(2n):before{background:transparent}.psv-container:not(.psv--is-touch) .psv-panel-menu-item:hover{background:#fff3}.psv-tooltip{position:absolute;z-index:50;box-sizing:border-box;max-width:200px;background:#3d3d3dcc;border-radius:4px;opacity:0;transition-property:opacity,transform;transition-timing-function:ease-in-out;transition-duration:.1s;cursor:default}.psv-tooltip-content{color:#fff;font:14px sans-serif;text-shadow:0 1px #000;padding:.5em 1em}.psv-tooltip-arrow{position:absolute;height:0;width:0;border:7px solid transparent}.psv-tooltip--top-left,.psv-tooltip--top-center,.psv-tooltip--top-right{transform:translate3d(0,5px,0)}.psv-tooltip--top-left .psv-tooltip-arrow,.psv-tooltip--top-center .psv-tooltip-arrow,.psv-tooltip--top-right .psv-tooltip-arrow{border-top-color:#3d3d3dcc}.psv-tooltip--bottom-left,.psv-tooltip--bottom-center,.psv-tooltip--bottom-right{transform:translate3d(0,-5px,0)}.psv-tooltip--bottom-left .psv-tooltip-arrow,.psv-tooltip--bottom-center .psv-tooltip-arrow,.psv-tooltip--bottom-right .psv-tooltip-arrow{border-bottom-color:#3d3d3dcc}.psv-tooltip--left-top,.psv-tooltip--center-left,.psv-tooltip--left-bottom{transform:translate3d(5px,0,0)}.psv-tooltip--left-top .psv-tooltip-arrow,.psv-tooltip--center-left .psv-tooltip-arrow,.psv-tooltip--left-bottom .psv-tooltip-arrow{border-left-color:#3d3d3dcc}.psv-tooltip--right-top,.psv-tooltip--center-right,.psv-tooltip--right-bottom{transform:translate3d(-5px,0,0)}.psv-tooltip--right-top .psv-tooltip-arrow,.psv-tooltip--center-right .psv-tooltip-arrow,.psv-tooltip--right-bottom .psv-tooltip-arrow{border-right-color:#3d3d3dcc}.psv-tooltip--left-top,.psv-tooltip--top-left{box-shadow:-3px -3px #5a5a5ab3}.psv-tooltip--top-center{box-shadow:0 -3px #5a5a5ab3}.psv-tooltip--right-top,.psv-tooltip--top-right{box-shadow:3px -3px #5a5a5ab3}.psv-tooltip--left-bottom,.psv-tooltip--bottom-left{box-shadow:-3px 3px #5a5a5ab3}.psv-tooltip--bottom-center{box-shadow:0 3px #5a5a5ab3}.psv-tooltip--right-bottom,.psv-tooltip--bottom-right{box-shadow:3px 3px #5a5a5ab3}.psv-tooltip--center-left{box-shadow:-3px 0 #5a5a5ab3}.psv-tooltip--center-right{box-shadow:3px 0 #5a5a5ab3}.psv-tooltip--visible{transform:translateZ(0);opacity:1}:root{color-scheme:dark;--bg: #131315;--bg-raised: #1a1a1d;--panel: #1f1f23;--panel-hover: #26262b;--border: #2d2d33;--border-strong: #3a3a42;--text: #dcdcdf;--text-dim: #8e8e96;--text-faint: #5c5c64;--thread: #e8a33d;--thread-dim: #a97525;--ok: #6cb875;--bad: #d4605f;--font-ui: "Archivo Variable", "Archivo", ui-sans-serif, system-ui, sans-serif;--font-mono: "Martian Mono", ui-monospace, monospace;--rail-w: 232px;--bar-h: 52px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:14px;-webkit-font-smoothing:antialiased;overflow:hidden}button{font-family:inherit}.frame{display:grid;grid-template-rows:var(--bar-h) 1fr;grid-template-columns:var(--rail-w) 1fr;grid-template-areas:"bar bar" "rail stage";height:100%}.bar{grid-area:bar;display:flex;align-items:center;gap:20px;padding:0 20px;background:var(--bg-raised);border-bottom:1px solid var(--border);position:relative}.wordmark{font-weight:640;font-size:17px;letter-spacing:.01em;user-select:none}.wordmark em{font-style:normal;color:var(--thread)}.bar-status{color:var(--text-dim);font-family:var(--font-mono);font-size:11px;letter-spacing:.02em}.bar-spacer{flex:1}.thread{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,var(--thread-dim) 30%,var(--thread) 50%,var(--thread-dim) 70%,transparent);background-size:220px 100%;background-repeat:no-repeat;background-position:-220px 0;opacity:0;transition:opacity .24s ease}.thread.busy{opacity:1;animation:weave 1.4s linear infinite}@keyframes weave{0%{background-position:-220px 0}to{background-position:calc(100% + 220px) 0}}.align-btn{appearance:none;border:1px solid var(--thread-dim);background:color-mix(in srgb,var(--thread) 12%,transparent);color:var(--thread);font-weight:600;font-size:13px;letter-spacing:.04em;padding:7px 22px;border-radius:6px;cursor:pointer;transition:background .16s ease,transform 80ms ease}.align-btn:hover:not(:disabled){background:color-mix(in srgb,var(--thread) 22%,transparent)}.align-btn:active:not(:disabled){transform:translateY(1px)}.align-btn:disabled{opacity:.35;cursor:default}.align-btn.ghost{border-color:var(--border-strong);background:transparent;color:var(--text-dim)}.align-btn.ghost:hover:not(:disabled){background:var(--panel-hover);color:var(--text)}.export-size{appearance:none;background:var(--panel);border:1px solid var(--border-strong);color:var(--text-dim);font-family:var(--font-mono);font-size:11px;padding:7px 10px;border-radius:6px;cursor:pointer;margin-right:-8px}.export-size:disabled{opacity:.35;cursor:default}.rail{grid-area:rail;background:var(--bg-raised);border-right:1px solid var(--border);overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.rail-empty{color:var(--text-faint);font-size:12px;text-align:center;margin-top:32px;line-height:1.6}.shot{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:6px;animation:shot-in .32s ease backwards}.shot.dropped{opacity:.45;border-style:dashed}.shot.rescued{border-color:var(--thread-dim)}@keyframes shot-in{0%{opacity:0;transform:translate(-8px)}}.shot img{width:64px;height:44px;object-fit:cover;border-radius:4px;display:block;background:#000}.shot-meta{min-width:0}.shot-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shot-info{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);margin-top:3px}.stage{grid-area:stage;position:relative;overflow:hidden;background:radial-gradient(1200px 600px at 30% -10%,#1a1a1e 0%,transparent 60%),var(--bg)}.dropzone{position:absolute;inset:24px;border:1.5px dashed var(--border-strong);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-dim);transition:border-color .16s ease,background .16s ease}.dropzone.over{border-color:var(--thread);background:color-mix(in srgb,var(--thread) 5%,transparent)}.dropzone h2{margin:0;font-size:20px;font-weight:560;color:var(--text)}.dropzone p{margin:0;font-size:13px}.dropzone .hint{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);margin-top:14px}.dropzone input{display:none}.browse{color:var(--thread);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.working{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-dim);background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(2px)}.working .step{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em}.error-note{position:absolute;left:50%;bottom:22px;transform:translate(-50%);display:flex;align-items:baseline;gap:12px;background:color-mix(in srgb,var(--bad) 16%,var(--panel));border:1px solid color-mix(in srgb,var(--bad) 45%,var(--border));color:var(--text);border-radius:8px;padding:10px 16px;font-size:13px;max-width:70%}.error-dismiss{appearance:none;border:0;background:transparent;color:var(--text-dim);font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.error-dismiss:hover{color:var(--text)}.viewer{position:absolute;inset:0}.viewer .psv-container{background:var(--bg)}.credit{position:absolute;left:50%;transform:translate(-50%);bottom:6px;width:max-content;max-width:calc(100% - 24px);text-align:center;font-family:var(--font-mono);font-size:10px;color:var(--text-faint);user-select:none}.credit a{color:var(--text-dim);text-decoration:none}.credit a:hover{color:var(--text);text-decoration:underline}@media(max-width:720px){.frame{grid-template-columns:1fr;grid-template-rows:var(--bar-h) 68px 1fr;grid-template-areas:"bar" "rail" "stage"}.bar{gap:8px;padding:0 12px;overflow-x:auto}.bar-status{display:none}.wordmark{font-size:15px}.align-btn{padding:6px 10px;font-size:12px;white-space:nowrap;flex:0 0 auto}.export-size{flex:0 0 auto}.rail{flex-direction:row;align-items:center;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid var(--border);padding:6px 10px}.rail-empty{margin:0 auto}.shot{grid-template-columns:64px;flex:0 0 auto}.shot-meta{display:none}.dropzone{inset:12px}}
