.public-channel-map{--public-map-header-height:78px}.public-map-hero{background:radial-gradient(ellipse at 75% 35%,#4278ed18,transparent 65%),var(--ng-bg)}.public-channel-map .public-map-primary{background:linear-gradient(110deg,#087fce,#4278ed 37%,#6263e7 65%,#149ec5);color:#fff;box-shadow:0 8px 24px #4278ed24}.public-channel-map .public-map-preview{box-shadow:var(--ng-shadow)}.public-channel-map .public-atlas{--ng-bg:#080f20;--ng-surface:#0d182d;--ng-raised:#111f37;--ng-text:#edf4ff;--ng-muted:#a3b2ca;--ng-line:rgba(151,182,230,.13);--ng-accent:#68d5ff;color:var(--ng-text)}@media (max-width:760px){.public-channel-map{--public-map-header-height:68px}}@media (max-width:639px){.public-channel-map .public-map-search{top:64px;width:calc(100% - 24px)}}.public-map-loading{position:absolute;inset:0;z-index:35;display:grid;place-items:center;padding:72px 18px;background:#080f20b8;backdrop-filter:blur(10px)}.public-map-loading-card{width:min(380px,100%);padding:30px;border:1px solid #97b6e621;border-radius:24px;background:linear-gradient(145deg,#152644,#0d182d);color:#edf4ff;text-align:center;box-shadow:0 24px 70px #0004}.public-map-loading-card>svg{margin:0 auto 18px;color:#68d5ff}.public-map-loading-card h2{font-size:20px;font-weight:650;line-height:1.35}.public-map-loading-card p{margin:12px 0 24px;color:#a3b2ca;font-size:14px;line-height:1.6}.public-map-progress{height:7px;overflow:hidden;border-radius:99px;background:#ffffff10}.public-map-progress>span{position:relative;display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#208adc,#7a79ff,#68d5ff);transition:width .25s ease}.public-map-progress>span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff80,transparent);animation:public-map-shimmer 1.6s linear infinite}.public-map-percent{display:block;margin-top:12px;font-size:13px;font-variant-numeric:tabular-nums;color:#a3b2ca}.public-map-retry{min-height:44px;padding:10px 20px;border-radius:12px;font-size:14px;cursor:pointer}@keyframes public-map-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@media(prefers-reduced-motion:reduce){.public-map-progress>span{transition:none}.public-map-progress>span:after{animation:none}}