@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(./montserrat-cyrillic-ext-500-normal-11xBT7e1.woff2)format("woff2"),url(./montserrat-cyrillic-ext-500-normal-DOzfAZ45.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(./montserrat-cyrillic-500-normal-T0SG181k.woff2)format("woff2"),url(./montserrat-cyrillic-500-normal-CyGtXmN9.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(./montserrat-vietnamese-500-normal-NT-t8RG1.woff2)format("woff2"),url(./montserrat-vietnamese-500-normal-DpeZlV_K.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(./montserrat-latin-ext-500-normal-BKtbrd6n.woff2)format("woff2"),url(./montserrat-latin-ext-500-normal-DWPqqZgs.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(./montserrat-latin-500-normal-DRFEGfly.woff2)format("woff2"),url(./montserrat-latin-500-normal-Dok2oTci.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(./montserrat-cyrillic-ext-600-normal-BtBW-rpm.woff2)format("woff2"),url(./montserrat-cyrillic-ext-600-normal-wReYPmz2.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(./montserrat-cyrillic-600-normal-CQEPC0hM.woff2)format("woff2"),url(./montserrat-cyrillic-600-normal-DUglwBrH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(./montserrat-vietnamese-600-normal-DKe6qT_E.woff2)format("woff2"),url(./montserrat-vietnamese-600-normal-SJ-HTWuM.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(./montserrat-latin-ext-600-normal-DSkTqI9L.woff2)format("woff2"),url(./montserrat-latin-ext-600-normal-CSDhkhgS.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(./montserrat-latin-600-normal-UVxSCcoG.woff2)format("woff2"),url(./montserrat-latin-600-normal-CdhFl4lI.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(./montserrat-cyrillic-ext-700-normal-MyDreaeu.woff2)format("woff2"),url(./montserrat-cyrillic-ext-700-normal-D-Mk2xRJ.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(./montserrat-cyrillic-700-normal-D-Pqjtdp.woff2)format("woff2"),url(./montserrat-cyrillic-700-normal-BvLYcGP1.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(./montserrat-vietnamese-700-normal-C0x1De3p.woff2)format("woff2"),url(./montserrat-vietnamese-700-normal-DnwGT2D9.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(./montserrat-latin-ext-700-normal-BOP2Nhf0.woff2)format("woff2"),url(./montserrat-latin-ext-700-normal-DdDFr05Z.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(./montserrat-latin-700-normal-BdjcYUrC.woff2)format("woff2"),url(./montserrat-latin-700-normal-BWkrl476.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--mint:#bfdddb;--mint-light:#d6ebe8;--teal:#5f8c8a;--teal-deep:#3f6f6d;--fs:100vmin;--ft:0px;--fl:0px}*{box-sizing:border-box}html,body{background:var(--mint);height:100%;color:var(--teal);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-family:Montserrat,system-ui,sans-serif;overflow:hidden}#app{position:fixed;inset:0;overflow:hidden}#scene{touch-action:none;cursor:grab;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#scene.dragging{cursor:grabbing}#scene.pointing{cursor:pointer}.title{left:calc(var(--fl) + var(--fs) * .503);top:calc(var(--ft) + var(--fs) * .129);font-weight:700;font-size:calc(var(--fs) * .0765);letter-spacing:.03em;color:var(--teal);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;margin:0;line-height:1;position:absolute;transform:translate(-50%,-50%)}.title span{opacity:0;filter:blur(6px);display:inline-block;transform:translateY(.18em)}.hud{padding:0 max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));pointer-events:none;opacity:0;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.hint{letter-spacing:.14em;text-transform:uppercase;color:#3f6f6d9e;margin:0;font-size:11px;font-weight:500}.hint-touch{display:none}@media (pointer:coarse){.hint-desktop{display:none}.hint-touch{display:inline}}.reset{pointer-events:auto;width:38px;height:38px;color:var(--teal-deep);cursor:pointer;-webkit-backdrop-filter:blur(6px);background:#e8f6f473;border:1px solid #3f6f6d38;border-radius:50%;place-items:center;transition:background .3s,transform .3s,opacity .3s,border-color .3s;display:grid}.reset:hover{background:#f0faf8cc;border-color:#3f6f6d66;transform:rotate(-30deg)}.reset:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.reset.idle{opacity:.35}.labels{pointer-events:none;position:absolute;inset:0}.marker{pointer-events:auto;cursor:pointer;font:inherit;color:var(--teal-deep);opacity:0;will-change:transform;background:0 0;border:0;align-items:center;gap:8px;padding:0;transition:opacity .5s;display:flex;position:absolute;top:0;left:0;transform:translate(-7px,-7px)}.labels.ready .marker{opacity:1}.labels.ready .marker.hidden{opacity:0;pointer-events:none}.marker .dot{border-radius:50%;flex:none;width:14px;height:14px;position:relative}.marker .dot:before,.marker .dot:after{content:"";border-radius:50%;position:absolute;inset:0}.marker .dot:before{background:#ffffffeb;transition:transform .35s cubic-bezier(.2,.8,.2,1);transform:scale(.42);box-shadow:0 1px 4px #1e464459}.marker .dot:after{border:1px solid #ffffffd9;animation:3.2s ease-out infinite pulse}.marker:nth-child(2) .dot:after{animation-delay:.6s}.marker:nth-child(3) .dot:after{animation-delay:1.2s}.marker:nth-child(4) .dot:after{animation-delay:1.8s}.marker:nth-child(5) .dot:after{animation-delay:2.4s}@keyframes pulse{0%{opacity:.9;transform:scale(.5)}70%,to{opacity:0;transform:scale(1.5)}}.marker .name{letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#f4fbfad1;border-radius:999px;padding:5px 9px;font-size:10.5px;font-weight:600;transition:opacity .35s,transform .35s cubic-bezier(.2,.8,.2,1);transform:translate(-6px);box-shadow:0 4px 14px #285a581f}.marker:hover .name,.marker:focus-visible .name,.marker.active .name{opacity:1;transform:none}.marker:hover .dot:before,.marker.active .dot:before{transform:scale(.62)}.marker:focus-visible{outline:none}.marker:focus-visible .dot{outline-offset:2px;outline:2px solid #fff}.veil{background:var(--mint);pointer-events:none;position:absolute;inset:0}body.shot .hud,body.shot .labels,body.shot .veil{display:none}body.ref #scene{opacity:.5}body.ref #app{background:url(/references/okinawa.png) 50%/contain no-repeat}@media (max-width:640px){.hint{letter-spacing:.12em;font-size:10px}}@media (prefers-reduced-motion:reduce){.marker .dot:after{animation:none}}.project-ui{z-index:100;top:max(14px, env(safe-area-inset-top));left:max(14px, env(safe-area-inset-left));right:max(14px, env(safe-area-inset-right));color:#285e5a;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;font:500 12px/1.4 Arial,Helvetica,sans-serif;display:flex;position:fixed}.project-ui>*{pointer-events:auto}.project-name,.interaction-settings summary,.interaction-settings-panel{-webkit-backdrop-filter:blur(10px);background:#effaf7e0;border:1px solid #3f6f6d33;box-shadow:0 6px 24px #2e645e1a}.project-name{border-radius:12px;gap:1px;max-width:calc(100% - 115px);padding:8px 12px;display:grid}.project-name span,.interaction-settings-panel p{color:#638b87;letter-spacing:.12em;font-size:9px;font-weight:700}.project-name strong{font-size:12px;font-weight:700}.interaction-settings{flex:none;position:relative}.interaction-settings summary{cursor:pointer;border-radius:12px;align-items:center;gap:7px;min-height:40px;padding:0 12px;font-weight:700;list-style:none;display:flex}.interaction-settings summary::-webkit-details-marker{display:none}.interaction-settings summary:hover{background:#fafffdfa}.interaction-settings summary:focus-visible,.interaction-settings input:focus-visible{outline-offset:3px;outline:2px solid #3f7771}.interaction-settings-panel{border-radius:14px;width:min(230px,100vw - 28px);padding:15px;position:absolute;top:calc(100% + 8px);right:0}.interaction-settings-panel p{margin:0 0 14px}.scene-toggle{justify-content:space-between;align-items:center;gap:12px;display:flex}.scene-toggle input{accent-color:#4d8e86;cursor:pointer;width:16px;height:16px;margin:0}.rotation-control{gap:9px;margin-top:16px;display:grid}.rotation-control input{accent-color:#4d8e86;cursor:pointer;width:100%;margin:0}body.shot .project-ui,html.shot .project-ui,html.review-view .project-ui{display:none}@media (max-width:480px){.project-name{padding:7px 10px}.project-name strong{font-size:11px}}
