@font-face{font-family:"Noto Sans Hebrew";src:url("gate-intro/gi-font.woff2") format("woff2");font-weight:500 800;font-display:swap;unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
:root{--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}
html,body{margin:0;height:100%;overflow:hidden;background:#3a6b3a;font-family:"Noto Sans Hebrew",Arial,sans-serif;overscroll-behavior:none}
button{font-family:inherit;cursor:pointer}
button:focus-visible{outline:4px solid #fff;outline-offset:3px}
#map{position:fixed;inset:0;overflow:hidden}
#scroller{position:absolute;inset:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;cursor:grab}
#scroller::-webkit-scrollbar{display:none}
#scroller.drag{cursor:grabbing}
#world{position:relative;width:max(100vw,177.78vh);height:max(100vh,56.25vw);top:min(0px,calc((100vh - 56.25vw) / 2));transform-origin:50% 50%}
@supports (height:100dvh){#world{width:max(100vw,177.78dvh);height:max(100dvh,56.25vw);top:min(0px,calc((100dvh - 56.25vw) / 2))}}
#plate{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;-webkit-user-drag:none}
#layers{position:absolute;inset:0;pointer-events:none}
#layers img{-webkit-user-drag:none;will-change:transform,opacity}
#stations{position:absolute;inset:0}
.st{position:absolute;border:0;background:none;padding:0;border-radius:40%;cursor:pointer}
.st:active{background:radial-gradient(closest-side,rgba(255,240,180,.28),rgba(255,240,180,0))}
.st-label{position:absolute;transform:translate(-50%,0);white-space:nowrap;padding:.12em .6em .16em;border-radius:999px;font-size:clamp(10px,1.45vh,13px);font-weight:700;line-height:1.25;color:#fff;
 background:rgba(40,22,6,.38);border:1px solid rgba(255,236,180,.45);text-shadow:0 1px 2px rgba(0,0,0,.55);pointer-events:none;opacity:.92;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.st-label .em{margin-inline-end:.25em}
.st-label .go{display:inline-block;margin-inline-start:.3em;font-size:.85em;color:#bff5b0}
.pan-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:38px;height:38px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);background:rgba(50,24,6,.42);color:#fff;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px 8px rgba(0,0,0,.3);transition:opacity .3s}
#pan-l{left:8px}#pan-r{right:8px}
.pan-btn.off{opacity:0;pointer-events:none}
.pan-btn.hint{animation:nudge 1.6s ease-in-out 3}
@keyframes nudge{50%{transform:translateY(-50%) translateX(var(--nx,4px))}}
#pan-l{--nx:-4px}
.map-top{position:absolute;top:calc(var(--sat) + 10px);left:10px;right:10px;display:flex;align-items:center;justify-content:center;pointer-events:none}
.round-btn{pointer-events:auto;position:absolute;right:0;top:0;width:44px;height:44px;border-radius:50%;border:2px solid #fff;background:rgba(70,32,6,.62);color:#fff;font-size:24px;font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center;padding:0 0 3px;box-shadow:0 3px 10px rgba(0,0,0,.35)}
.map-title{margin-top:4px;padding:.28em 1em .34em;border-radius:999px;font-size:clamp(15px,2.3vh,22px);font-weight:800;color:#fff;background:rgba(70,32,6,.55);border:1.5px solid rgba(255,214,120,.85);text-shadow:0 1px 2px rgba(0,0,0,.5);max-width:calc(100% - 110px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.noa-credit{position:absolute;left:0;right:0;bottom:calc(var(--sab) + 6px);margin:0;text-align:center;font-size:12px;font-weight:700;color:rgba(255,255,255,.95);text-shadow:0 1px 3px rgba(0,0,0,.8);pointer-events:none;z-index:5}
.soon{position:absolute;z-index:6;direction:rtl;transform:translate(-50%,-100%);padding:.45em 1.1em .55em;border-radius:22px;background:#fff;color:#6a3a00;font-size:clamp(20px,3vh,28px);font-weight:800;white-space:nowrap;box-shadow:0 6px 0 #f0c040,0 12px 26px rgba(0,0,0,.35);border:3px solid #ffd84d;pointer-events:none}
.soon::after{content:"";position:absolute;left:50%;bottom:-14px;margin-left:-12px;border:12px solid transparent;border-top-color:#ffd84d;border-bottom:0}
.soon.show{animation:pop .45s cubic-bezier(.3,1.6,.5,1) both}
.soon.hide{animation:popout .3s ease-in both}
.soon-ico{display:inline-block;margin-inline-end:.25em;animation:spin 1.6s linear infinite}
@keyframes pop{0%{transform:translate(-50%,-100%) scale(.3);opacity:0}100%{transform:translate(-50%,-100%) scale(1);opacity:1}}
@keyframes popout{to{transform:translate(-50%,-100%) scale(.6);opacity:0}}
@keyframes spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.25)}100%{transform:rotate(360deg) scale(1)}}
.whoosh{position:absolute;inset:0;background:radial-gradient(circle at var(--wx,50%) var(--wy,50%),#fffef5 0%,#fff1b8 40%,#ffd56a 100%);opacity:0;pointer-events:none;z-index:9}
.whoosh.on{transition:opacity .55s ease-in;opacity:1}
#world.zoom{transition:transform .75s cubic-bezier(.5,0,.3,1)}
@media (prefers-reduced-motion:reduce){.pan-btn.hint{animation:none}}
