:root,:host{--ol-background-color:white;--ol-accent-background-color:#f5f5f5;--ol-subtle-background-color:#80808040;--ol-partial-background-color:#ffffffbf;--ol-foreground-color:#333;--ol-subtle-foreground-color:#666;--ol-brand-color:#0af}.ol-box{box-sizing:border-box;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color);border-radius:2px}.ol-mouse-position{position:absolute;top:8px;right:8px}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;padding:2px;position:absolute;bottom:8px;left:8px}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color);text-align:center;will-change:contents, width;border-top:none;margin:1px;font-size:10px;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{background-color:var(--ol-foreground-color);float:right;z-index:10;width:1px;height:15px}.ol-scale-step-text{z-index:11;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color), 0 1.5px var(--ol-partial-background-color), 1.5px 0 var(--ol-partial-background-color), 0 -1.5px var(--ol-partial-background-color);font-size:10px;position:absolute;bottom:-5px}.ol-scale-text{text-align:center;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color), 0 1.5px var(--ol-partial-background-color), 1.5px 0 var(--ol-partial-background-color), 0 -1.5px var(--ol-partial-background-color);font-size:12px;position:absolute;bottom:25px}.ol-scale-singlebar{z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color);height:10px;position:relative}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-viewport,.ol-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{background-color:var(--ol-subtle-background-color);border-radius:4px;position:absolute}.ol-zoom{top:.5em;left:.5em}.ol-rotate{transition:opacity .25s linear,visibility linear;top:.5em;right:.5em}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{top:.5em;right:.5em}.ol-control button{color:var(--ol-subtle-foreground-color);font-weight:700;font-size:inherit;text-align:center;background-color:var(--ol-background-color);border:none;border-radius:2px;width:1.375em;height:1.375em;margin:1px;padding:0;line-height:.4em;text-decoration:none;display:block}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{will-change:transform;font-weight:400;display:block}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:hover,.ol-control button:focus{outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color);text-decoration:none}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;flex-flow:row-reverse;align-items:center;max-width:calc(100% - 1.3em);display:flex;bottom:.5em;right:.5em}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);margin:0;padding:1px .5em;font-size:12px}.ol-attribution li{list-style:none;display:inline}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{border-radius:4px 0 0;bottom:0;right:0}.ol-attribution.ol-uncollapsible img{max-height:1.6em;margin-top:-.2em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{height:200px;top:4.5em;left:.5em}.ol-zoomslider button{height:10px;position:relative}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{bottom:.5em;left:.5em}.ol-overviewmap.ol-uncollapsible{border-radius:0 4px 0 0;bottom:0;left:0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);width:150px;height:150px}.ol-overviewmap:not(.ol-collapsed) button{position:absolute;bottom:0;left:0}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}:root{--color-primary:#631d59;--color-primary-light:#7f2572;--color-primary-dark:#4a1543;--color-accent-1:#c2aec2;--color-accent-2:#9e7e9b;--color-accent-3:#6f3e6a;--color-text:#fff;--color-text-muted:#ffffffb3;--gradient-main:linear-gradient(-90deg, #631d59, #7f2572 50%, #631d59);--header-height:64px;--font-family:"Montserrat", -apple-system, BlinkMacSystemFont, sans-serif;--shadow-header:0 4px 24px #631d5980;--shadow-glow:0 0 40px #7f25724d}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;position:fixed;inset:0;overflow:hidden}body{background:var(--color-primary-dark);padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.app{flex-direction:column;display:flex;position:absolute;inset:0}.header{z-index:100;height:var(--header-height);background:var(--gradient-main);box-shadow:var(--shadow-header);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:relative}.header:after{content:"";background:linear-gradient(90deg, transparent, var(--color-accent-1), transparent);height:1px;position:absolute;bottom:-1px;left:0;right:0}.header-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.header-logo-icon{filter:drop-shadow(0 2px 8px #0000004d);width:auto;height:36px;transition:transform .3s}.header-logo-icon:hover{transform:scale(1.05)}.header-logo-full{filter:drop-shadow(0 1px 4px #0003);width:auto;height:28px}.header-title{align-items:center;display:flex}.header-title-agea-logo{width:auto;height:28px}.header-actions{align-items:center;gap:8px;display:flex}.header-zoom-btn{-webkit-backdrop-filter:blur(10px);cursor:pointer;color:var(--color-text-muted);font-family:var(--font-family);letter-spacing:.5px;background:#ffffff14;border:1px solid #ffffff26;border-radius:20px;align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .25s;display:flex}.header-zoom-btn:hover{color:var(--color-text);background:#ffffff2e;border-color:#ffffff4d}.header-zoom-btn:active{transform:scale(.95)}.header-zoom-icon{width:14px;height:14px}.header-locate-btn{color:#b4dcffd9;border-color:#b4dcff33}.header-locate-btn:hover{color:#d6eeff;background:#b4dcff26;border-color:#b4dcff66}.header-locate-btn:disabled{opacity:.65;cursor:not-allowed;pointer-events:none}.header-menu-container{align-items:center;gap:8px;display:flex;position:relative}.header-dots-btn{width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .25s;display:flex}.header-dots-btn:hover{color:var(--color-text);background:#fff3;border-color:#fff6}.header-dropdown{z-index:1000;background:#fff;border-radius:12px;min-width:180px;padding:8px;animation:.2s ease-out slideInDown;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 25px #0003}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{color:#333;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s;display:flex}.dropdown-item:hover{color:var(--color-primary);background:#631d5914}.dropdown-item svg{color:var(--color-primary)}@keyframes spin-icon{to{transform:rotate(360deg)}}.spin{animation:.9s linear infinite spin-icon}.map-container{flex:1;position:relative;overflow:hidden}.map-container .ol-map{width:100%;height:100%}.map-locate-btn{z-index:50;background:var(--gradient-main);cursor:pointer;-webkit-backdrop-filter:blur(10px);border:1px solid #fff3;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;position:absolute;bottom:1rem;right:1rem;box-shadow:0 4px 16px #00000040}.map-locate-btn:hover{background:var(--color-primary-light);transform:scale(1.05);box-shadow:0 6px 20px #631d5966}.map-locate-btn:active{transform:scale(.95)}.map-locate-btn:disabled{opacity:.7;cursor:not-allowed}.map-locate-icon{color:#fff;stroke:#fff;width:22px;height:22px}.loading-screen{background:var(--gradient-main);flex-direction:column;justify-content:center;align-items:center;gap:24px;height:100%;display:flex}.loading-logo{height:48px;animation:3s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.loading-spinner{border:3px solid #ffffff26;border-top-color:var(--color-accent-1);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=768px){:root{--header-height:56px}.header{padding:0 12px}.header-logo-icon{height:28px}.header-logo-full,.header-title-agea-logo{height:22px}.header-zoom-btn{padding:4px 10px;font-size:11px}.ol-zoom .ol-zoom-in,.ol-zoom .ol-zoom-out{width:36px!important;height:36px!important;font-size:18px!important}}.ol-attribution{display:none!important}.modal-backdrop.fullscreen-modal{z-index:9999;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.modal-content.company-modal.semi-transparent{-webkit-backdrop-filter:blur(4px);width:100vw;max-width:none;height:100vh;box-shadow:none;pointer-events:auto;background:linear-gradient(#631d59f2 0%,#631d5999 20%,#631d5900 60%);border-radius:0;flex-direction:column;padding:1rem;animation:.3s ease-out forwards modalFadeIn;display:flex;position:absolute;top:0;left:0;overflow:hidden}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-close-fixed{z-index:10000;color:#fff;cursor:pointer;pointer-events:auto;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:3rem;transition:all .2s;display:flex;position:fixed;top:1rem;right:1rem}.modal-close-fixed:hover{color:#fffc;transform:scale(1.1)}.company-title{color:#fff;font-family:var(--font-family);text-align:center;text-shadow:0 2px 4px #0000004d;flex-shrink:0;margin-top:0;margin-bottom:1.5rem;font-size:2.2rem;font-weight:700}.company-info{color:#333;text-align:center;max-width:800px;margin-bottom:2rem;margin-left:auto;margin-right:auto;font-size:1.1rem;line-height:1.6}.video-container{background:#000;border-radius:12px;flex-shrink:0;width:100%;max-width:800px;max-height:40vh;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;display:flex;overflow:hidden;box-shadow:0 4px 12px #00000026}.company-video{object-fit:cover;width:100%;max-height:40vh;display:block}.audio-section-minimal{flex-direction:column;flex:1;width:100%;max-width:800px;min-height:0;margin-bottom:1rem;margin-left:auto;margin-right:auto;display:flex}.transcription-inline{background:#ffffffd9;border:1px solid #631d591a;border-radius:12px;flex-direction:column;flex:1;align-items:flex-start;gap:1rem;padding:1.5rem 2rem;display:flex;position:relative;overflow-y:hidden;box-shadow:0 4px 12px #0000000d}.play-button-small{background:var(--gradient-main);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-top:0;padding:0;transition:transform .2s,opacity .2s;display:flex;position:absolute;top:.3rem;left:.3rem;box-shadow:0 2px 8px #631d594d}.play-button-small:hover{opacity:.9;transform:scale(1.1)}.transcription-text-reading{color:#222;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:.9rem;line-height:1.5;overflow-y:auto}.ol-zoom{-webkit-backdrop-filter:blur(10px)!important;background:#ffffff1a!important;border:1px solid #fff3!important;border-radius:12px!important;flex-direction:column!important;gap:4px!important;padding:4px!important;display:flex!important;top:1.5rem!important;left:1.5rem!important;box-shadow:0 4px 16px #00000026!important}.ol-zoom button{background:var(--gradient-main)!important;color:#fff!important;width:36px!important;height:36px!important;font-size:1.4rem!important;font-family:var(--font-family)!important;cursor:pointer!important;border:none!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;margin:0!important;font-weight:500!important;transition:all .2s!important;display:flex!important;box-shadow:1px 2px 8px #631d5933!important}.ol-zoom button:hover,.ol-zoom button:focus{background:var(--color-primary-light)!important;transform:scale(1.05)!important;box-shadow:1px 4px 12px #631d5966!important}.ol-zoom button:active{transform:scale(.95)!important}@media (width<=768px){.ol-zoom{top:1rem!important;left:1rem!important}.map-locate-btn{width:40px;height:40px;bottom:1rem;right:1rem}}.map-custom-controls{z-index:50;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:1.5rem;right:1.5rem}.map-layer-controls{z-index:50;-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;flex-direction:column;gap:12px;padding:8px;display:flex;position:absolute;top:1.5rem;right:1.5rem;box-shadow:0 8px 32px #00000026}.map-control-btn{background:var(--gradient-main);cursor:pointer;color:#fff;border:1px solid #fff3;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:44px;height:44px;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 4px 16px #00000040}.control-label{text-transform:uppercase;font-size:10px;font-weight:600;display:none}.map-control-btn svg{width:22px;height:22px}.map-control-btn:hover{background:var(--color-primary-light);transform:scale(1.1);box-shadow:0 8px 24px #631d5966}.map-control-btn:active{transform:scale(.9)}.map-control-btn.active{color:var(--color-primary);background:#fff;border-color:#fff;box-shadow:0 0 20px #ffffff80}.map-layer-controls .layer-btn{color:#fff;background:#ff5252}.map-layer-controls .layer-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 0 20px #631d5980}.map-custom-controls .lock-btn.locked{color:#fff!important;background:#ff5252!important;border-color:#ff5252!important;box-shadow:0 0 20px #ff525280!important}.icon-badge{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;box-shadow:0 2px 4px #0003!important}.icon-badge img,.icon-badge svg{filter:none!important;width:18px!important;height:18px!important}.manual-overlay{z-index:99999;background:#fff;flex-direction:column;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.manual-overlay-header{background:var(--gradient-main);align-items:center;height:56px;padding:0 16px;display:flex;box-shadow:0 2px 10px #0003}.manual-back-btn{color:#fff;font-family:var(--font-family);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px;font-size:16px;font-weight:600;transition:background .2s;display:flex}.manual-back-btn:active{background:#fff3}.manual-title{color:#fff;margin-left:auto;font-size:14px;font-weight:500}.manual-content-wrapper{-webkit-overflow-scrolling:touch;background:#f0f0f0;flex:1;width:100%;overflow-y:auto}
