:root{font-family:DM Sans,Segoe UI,Arial,sans-serif;color:#f2f4e9;background:#101917;font-synthesis:none;--accent:#d9ed9d;--muted:#bbc4b6;--line:#e7efcc21;--panel:rgba(19,28,25,.91)}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{transition:background .18s,color .18s,border-color .18s,opacity .18s}button:hover,a{color:var(--accent)}.app{height:100dvh;min-height:580px;position:relative;overflow:hidden}.panorama{position:absolute;width:100%;height:100%;inset:0;touch-action:none;cursor:grab;outline:0}.panorama:active{cursor:grabbing}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0a1418a6 0,transparent 23%,transparent 66%,#08110dd6 100%),linear-gradient(90deg,#09181080,transparent 35%,transparent 65%,#09110f3d)}.topbar{position:absolute;z-index:15;left:28px;right:28px;top:23px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brandmark{width:44px;height:44px;background:var(--accent);border-radius:13px;display:grid;place-items:center;color:#213123;box-shadow:0 3px 18px #0002}.brand strong{font-family:Space Grotesk,Segoe UI,Arial,sans-serif,sans-serif;font-size:16px;letter-spacing:1px}.brand strong span{color:var(--accent);font-size:14px;font-weight:400;margin-left:4px}.brand small{display:block;font-size:7.5px;letter-spacing:1.9px;color:#e5eddbb0;margin-top:5px}.modes{display:flex;padding:5px;border-radius:12px;background:#14201cce;border:1px solid var(--line);box-shadow:0 8px 20px #0001;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.modes button{padding:10px 17px;font-size:12px;border-radius:8px;color:#d8e0d4;white-space:nowrap}.modes button.active{background:#d9ed9d;color:#203120;font-weight:700;box-shadow:0 2px 5px #0001}.header-actions{display:flex;gap:8px;align-items:center}.prototype{font-size:9px;letter-spacing:1.3px;margin-right:12px;color:#e2e8d6;display:flex;align-items:center;gap:7px}.prototype i,.eyebrow>i,.tiny-dot{width:5px;height:5px;border-radius:100%;display:inline-block;background:var(--accent)}.iconbtn{width:35px;height:35px;display:grid;place-items:center;border:1px solid #d9e5cf30;background:#14201c80;border-radius:9px}.iconbtn:hover{background:#354b38}.location{position:absolute;z-index:2;left:34px;top:120px;pointer-events:none;text-shadow:0 2px 14px #0006}.eyebrow{font-size:9px;font-weight:600;letter-spacing:1.6px;color:var(--accent);display:flex;align-items:center;gap:7px}.eyebrow>span{margin-left:auto;color:#9daa9b;letter-spacing:.7px}.location h1{font-family:Space Grotesk,Segoe UI,Arial,sans-serif,sans-serif;font-size:clamp(28px,3vw,43px);font-weight:500;line-height:1.16;letter-spacing:-1.6px;margin:16px 0 12px}.location h1 span{color:#e9eedf}.location p{font-size:12px;color:#e2e9dc;margin:0}.location-tags{display:flex;gap:7px;margin-top:18px}.location-tags>span{display:flex;align-items:center;gap:5px;border:1px solid #e7edda44;border-radius:5px;padding:6px 8px;font-size:8px;letter-spacing:1px;background:#1a2d2780;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.glass{background:var(--panel);border:1px solid #e4efcd30;box-shadow:0 15px 50px #0002;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-radius:16px}.left-bottom{position:absolute;z-index:5;left:30px;bottom:104px;width:257px}.inspection{padding:19px 16px 10px}.inspection .eyebrow{padding:0 5px 12px}.point{width:100%;display:flex;align-items:center;gap:11px;text-align:left;padding:13px 8px;border-radius:9px;font-size:12px;border-top:1px solid #e4efcd12}.point small{display:block;font-size:8px;color:#96a693;margin-top:5px;letter-spacing:1px}.point-number{font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:11px;color:#a1ad98;align-self:flex-start;margin-top:2px}.point>svg{margin-left:auto;color:#7d8b78}.point.active{background:#d9ed9d0e}.point.active .point-number,.point.active>svg{color:var(--accent)}.capture-note{display:flex;align-items:center;gap:7px;font-size:9px;color:#d1dcc8;margin:12px 4px 0}.inspector{position:absolute;z-index:8;right:28px;top:105px;bottom:105px;width:305px;max-height:690px;overflow:auto;padding:20px;scrollbar-width:thin;scrollbar-color:#6f7f60 transparent}.panel-heading{display:flex;justify-content:space-between;align-items:center}.panel-heading .eyebrow{font-size:8px;letter-spacing:1.4px;color:#a8b49f}.panel-heading h2{font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:21px;letter-spacing:-.5px;font-weight:500;margin:7px 0 0}.panel-heading .iconbtn{width:27px;height:27px;background:none;border:0;color:#a0ad96}.asset-line{display:flex;justify-content:space-between;align-items:center;margin-top:17px;font-size:10px;letter-spacing:1px}.badge{color:var(--accent);font-size:8px;border:1px solid #cddf9333;padding:4px 7px;border-radius:4px;background:#d9ed9d0a;letter-spacing:1px}.wheel-area{height:190px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column}.wheel-halo{position:absolute;top:8px;width:158px;height:158px;border-radius:50%;background:radial-gradient(circle,#d9ed9d0f,transparent 70%);border:1px dashed #d9ed9d25}.wheel{position:relative;width:159px;height:159px;padding:0;touch-action:none;cursor:ns-resize;filter:drop-shadow(0 10px 7px #0009);transition:none}.wheel svg{display:block;width:100%;height:100%}.wheel-caption{font-size:7px;letter-spacing:1.3px;color:#a7b39b;margin-top:4px}.turning .wheel-caption{color:var(--accent)}.opening-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#c8d3bf}.opening-row strong{font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:28px;font-weight:500;color:#e8efdc}.opening-row small{font-size:14px;color:#a0af92;margin-left:3px}.valve-range{display:block;width:100%;height:4px;appearance:none;background:linear-gradient(90deg,var(--accent) var(--fill),#d9ed9d26 var(--fill));border-radius:4px;margin:14px 0 10px;cursor:pointer;touch-action:pan-x}.valve-range::-webkit-slider-thumb{appearance:none;width:13px;height:13px;background:#d9ed9d;border:3px solid #263724;border-radius:50%;box-shadow:0 0 0 1px #d9ed9d}.valve-range::-moz-range-thumb{width:9px;height:9px;background:#d9ed9d;border:3px solid #263724;border-radius:50%}.range-labels{display:flex;justify-content:space-between;font-size:7px;letter-spacing:.7px;color:#91a085}.range-labels>span:nth-child(2){color:#c7d4b6;letter-spacing:0;font-size:9px}.loop-heading{border-top:1px solid var(--line);margin-top:23px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#c4cfb9}.loop-heading>span{display:flex;align-items:center;gap:6px}.loop-heading b{font-size:7px;color:#aebba1;font-weight:500}.idle-dot,.running-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8d9a85}.running-dot{background:#d9ed9d;box-shadow:0 0 8px #d9ed9d80;animation:breathe 2s infinite}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;margin-top:20px}.metrics>div>span{display:block;font-size:7px;letter-spacing:1.3px;color:#a5b29a}.metrics strong{display:block;font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:24px;font-weight:400;margin-top:5px;font-variant-numeric:tabular-nums}.metrics small{font-family:DM Sans;font-size:9px;color:#a6b49a;margin-left:6px}.spark{height:2px;background:#d9ed9d15;margin-top:8px}.spark i{display:block;height:100%;background:#ccdf91;transition:width .2s}.power{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:8px;background:var(--accent);color:#263821;margin-top:22px;font-size:12px;font-weight:700}.power>svg:last-child{margin-left:auto}.power>svg:first-child{margin-right:auto}.power:hover{color:#12280d;background:#e7f6b8}.power.stop{background:#d2a781;color:#2d231d}.demo-note{font-size:8px;line-height:1.6;color:#a2af97;text-align:center;margin:11px 0 0}.equipment-description{padding:29px 0 12px;color:#aebb9f}.equipment-description p{font-size:12px;line-height:1.7}.text-button{display:flex;align-items:center;color:var(--accent);font-size:11px;gap:8px;padding:5px 0}.reopen{position:absolute;top:110px;right:30px;z-index:8;display:flex;gap:9px;align-items:center;padding:14px;font-size:12px}.crosshair{position:absolute;left:50%;top:50%;pointer-events:none;width:16px;height:16px;opacity:.6}.crosshair span{position:absolute;background:#eaf1db;box-shadow:0 0 2px #000}.crosshair span:first-child{width:12px;height:1px;left:-6px}.crosshair span:last-child{height:12px;width:1px;top:-6px}.hotspot{position:absolute;left:0;top:0;display:none;z-index:6;padding:0;align-items:center;gap:10px;white-space:nowrap}.hotspot-ring{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;color:#e0edc4;border:1px solid #e3efcba0;background:#182b24a8;box-shadow:0 0 0 5px #cfe6a014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.hotspot-ring:after{content:"";position:absolute;inset:-8px;border:1px solid #d9ed9d40;border-radius:50%;animation:ping 3s infinite}.hotspot.selected .hotspot-ring{background:var(--accent);color:#233a22;border-color:var(--accent)}.hotspot-label{text-align:left;background:#15241dd9;border:1px solid #d9ed9d3a;padding:9px 12px;border-radius:8px;box-shadow:0 5px 12px #0002}.hotspot-label small{display:block;font-size:7px;letter-spacing:1px;color:#d9ed9d;margin-bottom:4px}.hotspot-label strong{font-size:11px;font-weight:500}.look-arrows{position:absolute;bottom:162px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:11px;z-index:4}.look-arrows button{width:48px;height:40px;border:1px solid #e8efda55;background:#1b302876;border-radius:8px;transform:perspective(120px) rotateX(35deg);display:grid;place-items:center;animation:breathe 3s infinite;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.look-arrows button:first-child svg{transform:rotate(180deg)}.look-arrows>span{font-size:7px;letter-spacing:2px;color:#e3ecd5;text-shadow:0 2px 6px #000}.hands{position:absolute;bottom:74px;left:50%;transform:translate(-50%);width:470px;height:200px;pointer-events:none;z-index:3;opacity:.94;filter:drop-shadow(0 7px 7px #0004)}.hands>svg{position:absolute;height:180px;width:144px;bottom:-35px;animation:idle 6s ease-in-out infinite}.hand-left{left:-30px;transform:rotate(14deg)}.hand-right{right:-30px;transform:scaleX(-1) rotate(14deg);animation-delay:-3s!important}.hands.working .hand-right{animation:operate .35s ease-in-out infinite}.bottom{position:absolute;bottom:22px;left:30px;right:30px;z-index:12;display:flex;justify-content:space-between;align-items:center;border:1px solid #d9ed9d24;border-radius:11px;background:#14211be6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:12px 15px;gap:12px}.control-hints{display:flex;gap:15px;align-items:center}.control-hints>span{display:flex;gap:4px;align-items:center;font-size:9px;color:#c5cfbb}kbd{font:8px DM Sans;display:inline-grid;place-items:center;min-width:19px;padding:4px;border:1px solid #e7efcc30;background:#d9ed9d09;border-radius:4px;color:#e3ebd5}.bottom-actions{display:flex;align-items:center;gap:6px}.bottom-actions button{display:flex;align-items:center;gap:6px;padding:6px 8px;font-size:9px;color:#aebb9f;border-radius:5px}.bottom-actions button.enabled{color:#dfedbe;background:#d9ed9d0a}.bottom-actions button:hover{background:#d9ed9d18;color:#fff}.credits-button{border-left:1px solid #d9ed9d26!important;border-radius:0!important;margin-left:4px!important;padding-left:12px!important;font-size:8px!important}.orientation{position:absolute;z-index:3;bottom:102px;left:310px;width:114px;height:136px;border-radius:12px;background:#14211ba8;padding:5px;text-align:center}.orientation>svg{width:94px;height:94px;display:block;margin:auto}.orientation>div{margin-top:-10px}.orientation span{font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:14px;color:#e8efdb}.orientation small{font-size:6px;letter-spacing:1.3px;display:block;margin-top:3px;color:#c0ceb0}.mission{position:absolute;z-index:7;top:334px;left:30px;width:280px;padding:16px}.mission h3{font-size:14px;font-weight:500;margin:12px 0 8px}.mission p{font-size:10px;line-height:1.6;color:#b9c6ac;margin:0 0 9px}.progress{height:3px;border-radius:3px;background:#d9ed9d20;overflow:hidden;margin:12px 0 0}.progress i{display:block;background:var(--accent);height:100%;transition:width .4s}.toast{position:absolute;bottom:90px;left:50%;transform:translate(-50%);max-width:510px;width:max-content;z-index:22;border:1px solid #d9ed9d55;border-radius:10px;background:#17251cf5;padding:14px 18px;font-size:12px;color:#e8efdb;display:flex;gap:10px;align-items:center;box-shadow:0 10px 30px #0005;animation:appear .2s ease}.toast svg{flex-shrink:0}.loading{position:absolute;z-index:20;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;background:#111d18}.loading strong{font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:22px}.loading>span{color:#aebba4;font-size:12px}.loader{width:42px;height:42px;border-radius:50%;border:2px solid #d9ed9d25;border-top-color:var(--accent);animation:spin 1s linear infinite;margin-bottom:12px}.overlay{position:absolute;inset:0;z-index:40;background:#07110cb8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:grid;place-items:center;padding:24px}.dialog{position:relative;max-width:570px;width:100%;max-height:90dvh;overflow:auto;background:#17241e;border:1px solid #d9ed9d40;border-radius:20px;padding:35px;box-shadow:0 20px 80px #0008;outline:none}.dialog h2{font-family:Space Grotesk,Segoe UI,Arial,sans-serif;font-size:30px;font-weight:500;letter-spacing:-1px;margin:15px 0 20px}.dialog h3{font-size:13px;margin-top:25px}.dialog p{font-size:13px;color:#bdcab1;line-height:1.85}.dialog .small{font-size:10px;margin-top:20px}.dialog-close{position:absolute;top:15px;right:15px}.primary{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#243520;background:var(--accent);padding:13px 18px;border-radius:8px;margin-top:22px;font-size:12px;text-decoration:none;font-weight:600}.primary:hover{color:#162711;background:#e5f7b5}.activity{list-style:none;padding:0;margin:12px 0}.activity li{font-size:11px;color:#cbd7bf;margin:12px 0;display:flex;align-items:center;gap:9px}.activity i{width:4px;height:4px;border-radius:50%;background:#b9cd8b}.small{font-size:10px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{0%,to{transform:scale(.95);opacity:.4}50%{transform:scale(1.15);opacity:.8}}@keyframes breathe{50%{opacity:.65}}@keyframes idle{50%{translate:0 4px}}@keyframes operate{50%{translate:5px -15px}}@keyframes appear{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@media(min-width:1550px){.inspector{width:330px;right:36px;top:117px;padding:25px;bottom:117px}.wheel-area{height:215px}.wheel{width:180px;height:180px}.wheel-halo{width:178px;height:178px;top:10px}.location{left:40px;top:138px}.left-bottom{left:36px;bottom:112px}.topbar,.bottom{left:36px;right:36px}.orientation{left:325px}}@media(max-height:800px)and (min-width:901px){.inspector{top:92px;bottom:94px;padding:16px;width:282px}.wheel-area{height:147px}.wheel{width:124px;height:124px}.wheel-halo{width:124px;height:124px;top:1px}.wheel-caption{font-size:6px}.metrics{gap:13px;margin-top:14px}.metrics strong{font-size:21px}.loop-heading{margin-top:17px;padding-top:16px}.power{margin-top:17px}.location{top:103px}.location h1{font-size:32px}.left-bottom{bottom:97px}.mission{top:300px}.inspection{padding-top:14px}.point{padding:11px 6px}.orientation{bottom:97px}.look-arrows{bottom:135px}}@media(max-width:1150px){.prototype{display:none}.topbar{left:20px;right:20px;gap:12px}.brand strong{font-size:13px}.brand small{font-size:6px;letter-spacing:1.2px}.brandmark{width:38px;height:38px}.modes button{padding:9px 13px;font-size:11px}.location{left:24px}.left-bottom{left:20px;width:235px}.orientation{left:273px;width:95px;height:119px}.orientation>svg{width:82px;height:82px}.bottom{left:20px;right:20px}.desktop-hint{display:none!important}.control-hints{gap:9px}.inspector{right:20px}.mission{left:20px;width:255px}}@media(max-width:900px){.topbar{top:16px;align-items:flex-start}.modes{position:fixed;top:76px;left:20px}.header-actions{gap:5px}.header-actions .iconbtn{width:32px;height:32px}.brand small{display:none}.brand{margin-top:0}.location{top:143px}.location h1{font-size:30px}.location-tags{margin-top:12px}.inspector{top:133px;bottom:97px;width:270px;padding:16px}.left-bottom{width:215px}.orientation{display:none}.control-hints>span:nth-child(2){display:none}.bottom-actions{gap:2px}.bottom{padding:10px;bottom:15px}.mission{top:306px;width:225px}.look-arrows{left:46%;bottom:150px;gap:6px}.look-arrows>span{display:none}.hands{width:340px}.hand-left{left:-10px}.hand-right{right:-10px}.hotspot-label{display:none}}@media(max-width:620px){.app{min-height:500px}.topbar{left:14px;right:14px;top:13px}.brand strong{font-size:12px;letter-spacing:.6px}.brandmark{width:32px;height:34px;border-radius:10px}.brand strong span{font-size:11px}.brand{gap:8px}.header-actions .iconbtn{width:29px;height:30px;border-radius:7px}.fullscreen{display:none}.modes{top:62px;left:14px;padding:4px;border-radius:9px}.modes button{padding:8px 12px;font-size:10px}.location{left:17px;top:121px}.location .eyebrow{font-size:7px;letter-spacing:1.1px}.location h1{font-size:25px;letter-spacing:-.8px;margin:10px 0}.location p{font-size:10px}.location-tags{display:none}.inspector{inset:auto 12px 79px auto;width:225px;max-height:48dvh;padding:14px;border-radius:13px}.panel-heading h2{font-size:17px}.panel-heading .eyebrow{font-size:6px}.asset-line{margin-top:12px}.wheel-area{height:128px}.wheel{width:108px;height:108px}.wheel-halo{width:108px;height:108px;top:0}.wheel-caption{font-size:5px}.opening-row{font-size:10px}.opening-row strong{font-size:24px}.loop-heading{margin-top:16px;padding-top:15px;font-size:7px}.loop-heading b{font-size:6px}.metrics{margin-top:14px;gap:12px}.metrics strong{font-size:20px}.metrics small{font-size:8px;margin-left:3px}.metrics>div>span{font-size:6px}.power{margin-top:17px;padding:11px;font-size:11px}.demo-note{font-size:7px}.left-bottom{left:12px;width:132px;bottom:81px}.inspection{padding:11px 7px 5px;border-radius:12px}.inspection .eyebrow{font-size:6px;letter-spacing:.7px;padding:0 4px 8px}.point{padding:11px 3px;gap:6px;font-size:9px}.point small{font-size:5px;letter-spacing:.5px}.point-number{font-size:8px}.point>svg{display:none}.capture-note{font-size:6px;gap:4px;line-height:1.5;margin:7px 1px}.bottom{bottom:10px;left:12px;right:12px;padding:9px 8px;gap:5px}.bottom-actions button{font-size:8px;padding:5px}.bottom-actions button>svg{width:13px;height:13px}.control-hints>span{font-size:8px}.control-hints>span:nth-child(3){display:none}.credits-button{font-size:6px!important;padding-left:7px!important;margin-left:0!important}.control-hints kbd{font-size:6px;padding:3px}.hands{width:280px;bottom:65px;z-index:2;height:130px;opacity:.75}.hands>svg{height:126px;width:100px}.look-arrows{left:50%;top:40%;bottom:auto;gap:5px}.look-arrows button{width:33px;height:30px}.look-arrows button svg{width:18px;height:18px}.mission{top:230px;left:15px;width:190px;padding:12px}.mission h3{font-size:11px;margin-top:9px}.mission p{font-size:8px}.mission .eyebrow{font-size:6px}.toast{bottom:70px;max-width:calc(100% - 28px);width:max-content;font-size:10px;padding:12px}.dialog{padding:27px 22px}.dialog h2{font-size:24px}.dialog p{font-size:12px}.reopen{top:122px;right:12px;font-size:10px;padding:10px}.hotspot-ring{width:33px;height:33px}.equipment-description{padding-top:15px}.equipment-description p{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.photo-hands{position:absolute;left:50%;bottom:clamp(64px,9.5vh,100px);width:min(53.5vw,950px);aspect-ratio:950/220;transform:translate(-50%);z-index:3;pointer-events:none;overflow:visible;-webkit-user-select:none;user-select:none}.photo-hand{position:absolute;bottom:0;width:36.85%;height:auto;display:block;object-fit:contain;pointer-events:none;-webkit-user-drag:none;filter:drop-shadow(0 2px 3px rgba(7,13,12,.14));will-change:transform;backface-visibility:hidden}.photo-hand-left{left:0;transform-origin:74% 95%;animation:photo-left-idle 6s ease-in-out infinite}.photo-hand-right{right:0;transform-origin:26% 95%;animation:photo-right-idle 6s ease-in-out infinite;animation-delay:-3s}.hands-anchor.walking .photo-hand-left{animation:photo-step-left .74s ease-in-out infinite}.hands-anchor.walking .photo-hand-right{animation:photo-step-right .74s ease-in-out infinite}.photo-hands.working .photo-hand-right{animation:photo-valve-reach .55s ease-in-out infinite}@keyframes photo-left-idle{0%,to{transform:translateZ(0) rotate(0)}50%{transform:translate3d(0,2px,0) rotate(-.15deg)}}@keyframes photo-right-idle{0%,to{transform:translateZ(0) rotate(0)}50%{transform:translate3d(0,2px,0) rotate(.15deg)}}@keyframes photo-step-left{0%,to{transform:translate3d(0,4px,0) rotate(.6deg)}50%{transform:translate3d(0,-5px,0) rotate(-.6deg)}}@keyframes photo-step-right{0%,to{transform:translate3d(0,-5px,0) rotate(-.6deg)}50%{transform:translate3d(0,4px,0) rotate(.6deg)}}@keyframes photo-valve-reach{0%,to{transform:translateZ(0) rotate(0)}50%{transform:translate3d(-7px,-12px,0) rotate(-2deg)}}@media(max-width:900px){.photo-hands{width:min(63vw,630px);bottom:clamp(58px,9vh,85px)}}@media(max-width:620px){.photo-hands{width:min(96vw,550px);bottom:clamp(55px,10vh,85px);opacity:.84}}@media(prefers-reduced-motion:reduce){.photo-hand-left,.photo-hand-right,.hands-anchor.walking .photo-hand-left,.hands-anchor.walking .photo-hand-right,.photo-hands.working .photo-hand-right{animation:none!important;transform:none!important}}.hands-anchor .photo-hands{opacity:0;visibility:hidden;transform:translate(-50%,22px) scale(.975);transition:opacity .34s ease,transform .4s ease,visibility 0s linear .35s}.hands-anchor.is-near .photo-hands{opacity:.96;visibility:visible;transform:translate(-50%) scale(1);transition:opacity .38s ease,transform .44s cubic-bezier(.2,.8,.2,1),visibility 0s linear 0s}.photo-hands .photo-hand{image-rendering:auto;filter:drop-shadow(0 1px 2px rgba(5,10,8,.1))}@media(max-width:620px){.hands-anchor.is-near .photo-hands{opacity:.87}}@media(prefers-reduced-motion:reduce){.hands-anchor .photo-hands,.hands-anchor.is-near .photo-hands{transition:none!important}}.hotspot.attention .hotspot-ring{border-color:#6af5b7f5;background:#0f412de0;box-shadow:0 0 0 9px #38f8901a,0 0 27px #38f89073,inset 0 0 10px #7bffbb33;color:#b9ffd5}.hotspot.attention .hotspot-ring:before{content:"";position:absolute;inset:-17px;border-radius:50%;border:2px dashed rgba(140,255,189,.78);box-shadow:0 0 23px #4aed882e;animation:target-acquire 2.8s ease-in-out infinite}.hotspot.attention .hotspot-label{border-color:#58f68ea6;background:#07271cf0;box-shadow:0 5px 25px #0006,0 0 15px #3bf47b1f}.hotspot.ready .hotspot-ring{background:#9deebc;color:#143924;border-color:#d7ffe9;box-shadow:0 0 0 8px #48ff8b24,0 0 28px #46ff88a6}.hotspot-command{display:block;font-size:8px;letter-spacing:1.15px;font-weight:700;color:#8ffcb4;margin-top:6px;white-space:nowrap}.hotspot.ready .hotspot-command{color:#e2ffe7}@keyframes target-acquire{0%,to{transform:scale(.94);opacity:.65}50%{transform:scale(1.1);opacity:1}}.interaction-hint{position:absolute;z-index:7;left:50%;bottom:218px;transform:translate(-50%);width:max-content;max-width:min(440px,calc(100vw - 40px));display:flex;gap:12px;align-items:center;padding:10px 13px;border-radius:12px;pointer-events:none;background:#0a1f18e0;box-shadow:0 15px 35px #0005}.interaction-hint-icon{border-radius:50%;height:33px;width:33px;display:grid;place-items:center;background:#d3eba71a;color:var(--accent)}.interaction-hint span:nth-child(2){display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.interaction-hint strong{font-size:11px;white-space:nowrap}.interaction-hint small{color:#b2c6b2;font-size:9px}.interaction-hint kbd{font-size:10px;background:#dcf2b6;color:#15291d;font-weight:800}.interaction-hint.can-operate{border-color:#52f089a8;box-shadow:0 0 25px #51ed882b,0 15px 35px #0005}.interaction-pip{position:absolute;z-index:11;right:28px;bottom:100px;width:min(490px,calc(100vw - 56px));max-height:calc(100dvh - 198px);overflow:auto;padding:0;border:1px solid rgba(159,245,190,.68);background:#10211cfa;box-shadow:0 23px 70px #000000b3,0 0 35px #2ad07d1f;border-radius:18px;animation:pip-enter .28s ease-out}@keyframes pip-enter{0%{opacity:0;transform:translate3d(0,15px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}.pip-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;background:#0d241c;min-height:60px;border-bottom:1px solid #e7efcc25}.pip-heading{display:flex;gap:11px;align-items:center;min-width:0}.pip-heading>span:last-child{min-width:0;display:flex;flex-direction:column;gap:4px}.pip-heading small{font-size:8px;letter-spacing:1.1px;color:#99bfaa}.pip-heading strong{font-size:16px;color:#ebf4e5;font-family:Space Grotesk,Segoe UI,Arial,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.pip-live-dot{flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:#81f2af;box-shadow:0 0 0 4px #80f0ae1f,0 0 14px #69ffaa99}.pip-close{height:31px;width:31px;border:1px solid #d0f2cd44;border-radius:9px;display:grid;place-items:center;background:#183a2c;flex-shrink:0}.pip-close:hover{background:#315c43}.pip-photo{height:235px;position:relative;overflow:hidden;background:radial-gradient(circle at center,#315444,#0e1d1a)}.pip-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#07151070 0%,transparent 25%,transparent 61%,#06120ba6 100%);pointer-events:none;z-index:1}.equipment-closeup,.equipment-closeup canvas{display:block;width:100%;height:100%}.equipment-closeup canvas{object-fit:cover}.closeup-quality{position:absolute;right:11px;top:11px;z-index:2;color:#ecf9df;letter-spacing:.7px;font-size:8px;text-shadow:0 1px 5px #000b;background:#0a2419b5;padding:5px 7px;border-radius:5px}.pip-tag{position:absolute;left:11px;top:11px;z-index:3;color:#e7f7dd;background:#112719dc;border:1px solid #dceccc3d;padding:6px 9px;font-size:9px;letter-spacing:1px;border-radius:6px}.pip-photo-hands{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden}.pip-photo-hands .photo-hands{position:absolute;left:50%;bottom:-8px;transform:translate(-50%);width:100%;height:100%;aspect-ratio:auto;opacity:.91;visibility:visible;pointer-events:none}.pip-photo-hands .photo-hand{position:absolute;bottom:-4px;width:43%;max-height:88%;object-fit:contain;filter:drop-shadow(0 3px 5px #0009)}.pip-photo-hands .photo-hand-left{left:-3%}.pip-photo-hands .photo-hand-right{right:-3%}.pip-valve-visual{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);width:89px;height:89px;z-index:4;border-radius:50%;background:#101c1340;filter:drop-shadow(0 2px 5px #000b);transition:filter .2s}.pip-valve-visual svg{display:block;width:100%;height:100%;transition:transform .25s ease}.pip-valve-visual:hover{filter:drop-shadow(0 0 13px rgba(246,180,115,.8))}.pip-valve-visual:active svg{transform:rotate(18deg)}.pip-operating-chip{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:8px;background:#0d2019da;border:1px solid #8be69f6e;padding:6px 9px;border-radius:6px;font-size:9px;color:#e3f7e4;white-space:nowrap}.pip-operating-chip .pip-live-dot{width:6px;height:6px;flex-basis:6px}.pip-body{padding:14px 16px 12px;background:#10231b}.pip-opening-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:#e5eee0}.pip-opening-heading span small{display:block;margin-top:5px;font-size:8px;color:#aabca5;letter-spacing:.9px}.pip-opening-heading strong{font-size:25px;font-weight:500;font-variant-numeric:tabular-nums;font-family:Space Grotesk,Segoe UI,Arial,sans-serif;color:#e2f8ae}.pip-valve-commands{display:flex;align-items:center;gap:12px;margin:12px 0}.pip-valve-commands button{flex-shrink:0;border:1px solid #bbf2b566;color:#e6f5e1;background:#1a382b;border-radius:7px;font-weight:700;font-size:11px;padding:9px}.pip-valve-commands input{min-width:0;width:100%;accent-color:#d9ed9d;cursor:pointer}.pip-status-row{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:9px;margin-top:7px;color:#bcd1b8}.pip-status-row span{display:flex;align-items:center;gap:7px}.pip-status-row strong{font-weight:600;font-size:10px;color:#ecf2df;white-space:nowrap}.pip-action{width:100%;margin-top:13px;padding:12px;display:flex;align-items:center;justify-content:center;gap:9px;background:#d9ed9d;color:#1f3622;border-radius:9px;font-weight:750;font-size:12px}.pip-action:hover{background:#e6f6b1;color:#172d19}.pip-action.is-running{background:#d5ac8c;color:#33231b}.pip-description{font-size:12px;line-height:1.7;color:#cfdfc9;margin:3px 0 12px}.pip-disclaimer{font-size:8px;line-height:1.5;color:#9eb09b;margin:11px 0 0}@media(min-width:1550px){.interaction-pip{right:36px;bottom:110px;width:565px}.pip-photo{height:290px}}@media(max-width:900px){.interaction-pip{right:20px;bottom:90px;width:min(445px,calc(100vw - 40px));max-height:calc(100dvh - 171px)}.pip-photo{height:205px}.interaction-hint{bottom:203px}}@media(max-width:620px){.interaction-pip{right:12px;left:12px;bottom:73px;width:auto;max-height:min(64dvh,540px);border-radius:13px}.pip-header{padding:10px 12px;min-height:49px}.pip-heading strong{font-size:13px}.pip-heading small{font-size:6px}.pip-photo{height:170px}.pip-body{padding:10px 12px}.pip-tag,.closeup-quality{font-size:7px}.pip-valve-visual{width:65px;height:65px}.pip-photo-hands .photo-hand{width:39%;max-height:90%}.pip-opening-heading strong{font-size:22px}.interaction-hint{bottom:77px;max-width:calc(100vw - 28px);padding:8px 9px}.interaction-hint small{font-size:8px}.interaction-hint strong{font-size:10px}.hotspot.ready .hotspot-label,.hotspot.attention .hotspot-label{display:block}.hotspot-label{padding:7px 8px}.hotspot-label strong{font-size:9px}.hotspot-command{font-size:6px;letter-spacing:.3px}.pip-status-row strong{font-size:9px}}@media(prefers-reduced-motion:reduce){.hotspot.attention .hotspot-ring:before,.interaction-pip{animation:none!important}}.pip-operation-meter{display:block;width:66px;height:4px;overflow:hidden;border-radius:8px;background:#e7f7d43b;flex-shrink:0}.pip-operation-meter i{display:block;height:100%;background:#91f3a2;border-radius:8px;transition:width .18s ease}@media(max-width:620px){.pip-operation-meter{width:44px}}@media(prefers-reduced-motion:reduce){.pip-operation-meter i{transition:none!important}}.try-interaction{display:flex;justify-content:center;align-items:center;gap:8px;margin:8px 2px 12px;width:calc(100% - 4px);background:#d9ed9d;color:#162b1d;border-radius:8px;padding:12px 9px;font-weight:800;font-size:10px;letter-spacing:.15px;box-shadow:0 4px 18px #0004;text-align:center}.try-interaction:hover{background:#ecfac8;color:#132417}.try-interaction svg:last-child{margin-left:auto}.capture-note{line-height:1.45}.station-mini-map{position:absolute;left:8px;right:8px;top:-23px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:8px;letter-spacing:.35px;background:#13291fe8;border-radius:6px;padding:6px;color:#d5eec9;border:1px solid #c7ecb641;white-space:nowrap}.station-mini-pin{display:inline-block;width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#d9ed9d;box-shadow:0 0 0 3px #d9ed9d29}.orientation{overflow:visible}.look-arrows>span{letter-spacing:1.15px;white-space:nowrap}.pip-photo-hands{position:absolute!important;inset:0!important;display:block!important;visibility:visible!important;opacity:1!important;overflow:hidden!important;z-index:5;pointer-events:none}.valve-preview-gloves{position:absolute;inset:0;display:block;overflow:hidden;visibility:visible;opacity:1;pointer-events:none;z-index:2}.valve-preview-glove{display:block!important;position:absolute!important;bottom:-7%!important;height:auto!important;width:57%!important;max-width:none!important;max-height:112%!important;object-fit:contain!important;opacity:1!important;visibility:visible!important;pointer-events:none;filter:drop-shadow(0 5px 6px #0009);transform-origin:50% 95%;animation:glove-demo-idle 5s ease-in-out infinite}.valve-preview-glove.left{left:-7%!important}.valve-preview-glove.right{right:-7%!important;animation-delay:-2.5s}.valve-preview-gloves.is-working .valve-preview-glove.right{animation:glove-demo-reach .38s ease-in-out}@keyframes glove-demo-idle{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,2px,0)}}@keyframes glove-demo-reach{50%{transform:translate3d(-5px,-9px,0) rotate(-2deg)}}@media(max-width:900px){.station-mini-map{font-size:7px}.valve-preview-glove{width:59%!important}}@media(max-width:620px){.try-interaction{padding:10px 5px;font-size:8px;gap:4px}.try-interaction svg{width:13px;height:13px}.valve-preview-glove{width:60%!important}.station-mini-map{display:none}.look-arrows>span{font-size:6px;letter-spacing:.4px}}@media(prefers-reduced-motion:reduce){.valve-preview-glove,.valve-preview-gloves.is-working .valve-preview-glove.right{animation:none!important}}.always-visible-hands{position:absolute;left:50%;bottom:48px;width:min(83vw,1080px);height:clamp(210px,43vh,410px);transform:translate(-50%);z-index:8;overflow:visible;pointer-events:none;-webkit-user-select:none;user-select:none;visibility:visible;opacity:1}.always-visible-hands .valve-preview-gloves{position:absolute!important;inset:0!important;visibility:visible!important;opacity:1!important;overflow:visible!important;pointer-events:none!important}.always-visible-hands .valve-preview-glove{width:51%!important;max-width:none!important;max-height:120%!important;height:auto!important;bottom:-17%!important;opacity:1!important;visibility:visible!important;image-rendering:auto;filter:drop-shadow(0 7px 10px rgba(1,12,8,.45));pointer-events:none!important}.always-visible-hands .valve-preview-glove.left{left:-5%!important}.always-visible-hands .valve-preview-glove.right{right:-5%!important}.always-visible-hands.is-walking .valve-preview-glove.left{animation:walk-glove-left .58s ease-in-out infinite!important}.always-visible-hands.is-walking .valve-preview-glove.right{animation:walk-glove-right .58s ease-in-out infinite!important}@keyframes walk-glove-left{0%,to{transform:translate3d(0,5px,0) rotate(.5deg)}50%{transform:translate3d(0,-6px,0) rotate(-.5deg)}}@keyframes walk-glove-right{0%,to{transform:translate3d(0,-6px,0) rotate(-.5deg)}50%{transform:translate3d(0,5px,0) rotate(.5deg)}}.hands-on-indicator{display:flex;align-items:center;gap:7px;color:#dcf0c5;font-size:9px;white-space:nowrap;opacity:.9}.hands-on-indicator svg{flex-shrink:0}@media(max-width:900px){.always-visible-hands{width:94vw;height:clamp(170px,35vh,300px);bottom:42px}.always-visible-hands .valve-preview-glove{width:53%!important;bottom:-19%!important}}@media(max-width:620px){.always-visible-hands{width:106vw;height:clamp(140px,31vh,230px);bottom:37px}.always-visible-hands .valve-preview-glove{width:54%!important;bottom:-25%!important}.hands-on-indicator{font-size:7px;gap:3px}.hands-on-indicator svg{width:12px;height:12px}}@media(prefers-reduced-motion:reduce){.always-visible-hands .valve-preview-glove,.always-visible-hands.is-walking .valve-preview-glove{animation:none!important}}
