:root{--night-0:#02070b;--night-1:#041018;--night-2:#071821;--night-3:#0b222c;--night-glass:#06141be0;--night-glass-strong:#051017f5;--observation:#79cfe2;--observation-strong:#b0e6ef;--moonlight:#d4b273;--danger-soft:#cb7768;--surface-border:#a5cdd829;--surface-border-strong:#97d3e157;--surface-highlight:#79cfe21a;--shadow-panel:0 18px 48px #00000057;--shadow-float:0 14px 34px #0000006b;--radius-panel:14px;--radius-control:8px;--control-height:36px}body{background:radial-gradient(circle at 18% -10%, #79cfe214, transparent 34%), radial-gradient(circle at 82% -18%, #d4b2730f, transparent 28%), var(--night-0)}.app-shell:not(.planner-root) .topbar{border-bottom-color:var(--surface-border-strong);background:linear-gradient(#06141bf7,#041018e8);gap:14px;min-height:58px;padding:9px 18px;box-shadow:0 12px 34px #0003}.nav-tabs{border:1px solid var(--surface-border);background:#02090eb8;border-radius:999px;align-items:center;gap:3px;min-width:0;padding:3px;display:inline-flex}.nav-tab{min-height:32px;color:var(--muted);letter-spacing:.02em;white-space:nowrap;transition:color var(--transition), border-color var(--transition), background-color var(--transition), box-shadow var(--transition);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0 13px;font-size:11px;font-weight:650;text-decoration:none;display:inline-flex}.nav-tab:hover{color:var(--text);background:#ffffff09}.nav-tab.active{color:var(--observation-strong);background:linear-gradient(#79cfe226,#79cfe214);border-color:#79cfe247;box-shadow:inset 0 0 0 1px #79cfe20a}.source-button,.map-view-actions>button,.cloud-layer-toggles button,.cloud-night-tabs button{min-height:var(--control-height);border-radius:var(--radius-control);transition:color var(--transition), border-color var(--transition), background-color var(--transition), box-shadow var(--transition)}.source-button{flex:none;justify-content:center;align-items:center;gap:6px;display:inline-flex}.source-button:hover,.map-view-actions>button:hover,.cloud-layer-toggles button:hover,.cloud-night-tabs button:hover{border-color:var(--surface-border-strong);color:var(--observation-strong);background-color:#79cfe214}:is(.side-panel,.cloud-control,.observing-map-control,.cloud-timeline,.popover,.boundary-legend,.source-status-panel,.cloud-summary-card span){border-color:var(--surface-border)}.side-panel,.cloud-control,.observing-map-control,.popover{box-shadow:var(--shadow-panel);background:linear-gradient(#081b24f5,#040f16f0)}.cloud-timeline{background:linear-gradient(#071821f5,#030c12fa);box-shadow:0 -16px 44px #0000003d}.panel-kicker,.cloud-control-head b,.observing-map-control-title,.source-status-title{color:var(--moonlight);letter-spacing:.12em}.hourly-matrix{border-color:var(--surface-border-strong);background:linear-gradient(#081a23f5,#040f16f5);box-shadow:0 12px 30px #0003}.hourly-matrix-head h3,.hourly-matrix-time,.hourly-matrix td button{color:var(--text)}.hourly-matrix-status{color:var(--moonlight)}.hourly-matrix th,.hourly-matrix td{border-right-color:var(--surface-border);border-bottom-color:var(--surface-border)}.hourly-matrix thead th,.hourly-matrix thead th:first-child{color:var(--observation-strong);background:#0b222c}.hourly-matrix tbody th{color:#dbe9eb;background:#071821}.hourly-matrix th small,.hourly-matrix tbody th small,.hourly-matrix-time small,.hourly-matrix-legend{color:var(--muted)}.hourly-matrix th.selected,.hourly-matrix td.selected{box-shadow:inset 0 0 0 2px var(--observation)}.hourly-matrix td button:hover,.hourly-matrix td button:focus-visible,.hourly-matrix-time:hover,.hourly-matrix-time:focus-visible{background:var(--surface-highlight)}.hourly-matrix td.cloud{background:linear-gradient(90deg,#79cfe20f,#79cfe21f)}.hourly-matrix td.cloud:before,.legend-swatch.cloud{background:var(--observation)}.hourly-matrix td.temperature:before,.legend-swatch.temperature{background:var(--moonlight)}.hourly-matrix td.precipitation:before,.legend-swatch.precipitation{background:var(--danger-soft)}.cloud-night-tabs button{border-color:var(--surface-border);color:var(--muted);background:#071821d1}.cloud-night-tabs button.active,.cloud-night-tabs button:hover{border-color:var(--observation);color:var(--observation-strong);background:var(--surface-highlight)}.cloud-summary-card span,.source-status-panel{background:#0410178f}.popover-backdrop,.modal-backdrop,.drawer-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.popover{border-radius:var(--radius-panel)}.popover .note{background:#d4b27312;border-color:#d4b2734d}:is(input,select,textarea){accent-color:var(--observation)}.source-dot,.freshness-dot,.event-status .live-dot{background:var(--observation)}.source-dot.unconfigured{background:var(--moonlight)}@media (max-width:1080px){.app-shell:not(.planner-root) .topbar{gap:10px}.brand-block span,.event-status span{display:none}.nav-tab{padding-inline:10px}}@media (max-width:760px){.app-shell:not(.planner-root) .topbar{min-height:56px;padding:8px 10px}.brand-block{flex:none}.brand-block>div:last-child,.event-status{display:none}.nav-tabs{scrollbar-width:none;flex:1;justify-content:stretch;overflow-x:auto}.nav-tabs::-webkit-scrollbar{display:none}.nav-tab{flex:1 0 auto;min-width:max-content;padding-inline:11px}.source-button{width:var(--control-height);min-width:var(--control-height);padding:0}.source-button-label{display:none}}@media (prefers-reduced-motion:reduce){.nav-tab,.source-button,.map-view-actions>button,.cloud-layer-toggles button,.cloud-night-tabs button{transition:none}}
.cloud-control-actions{align-items:center;gap:6px;display:flex}.cloud-refresh-button{border:1px solid var(--surface-border,var(--line));border-radius:var(--radius-control,var(--radius-sm));min-height:36px;color:var(--muted);cursor:pointer;transition:color var(--transition), border-color var(--transition), background-color var(--transition);background:#071821d1;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-size:11px;display:inline-flex}.cloud-refresh-button:hover:not(:disabled),.cloud-refresh-button:focus-visible{border-color:var(--observation,var(--green));color:var(--observation-strong,var(--green-soft));background:#79cfe21a}.cloud-refresh-button:disabled{cursor:wait;opacity:.62}.source-status-title{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.source-status-title small{min-width:0;color:var(--muted);font-family:var(--font-data);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:400;overflow:hidden}.source-dot.degraded{background:var(--danger-soft,var(--red));box-shadow:0 0 8px #cb77686b}.source-dot.not-installed{background:var(--muted-2,#738990);box-shadow:none}.source-dot.unconfigured{background:var(--moonlight,var(--amber))}@media (max-width:768px){.cloud-control-actions{flex-wrap:wrap;justify-content:flex-end}.cloud-refresh-button span{display:none}.cloud-refresh-button{width:36px;padding-inline:0}}
.viewport-recommendation-panel{z-index:860;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:min(430px,100% - 36px);max-height:min(64vh,610px);color:var(--text);background:radial-gradient(circle at 100% 0,#79cfe21a,#0000 34%),linear-gradient(#071821f5,#030c12f7);border:1px solid #97d3e152;border-radius:14px;grid-template-rows:auto minmax(0,1fr);display:grid;position:absolute;bottom:18px;right:18px;overflow:hidden;box-shadow:0 20px 54px #0000007a}.viewport-recommendation-panel.is-collapsed{width:min(300px,100% - 36px);max-height:68px;bottom:178px}.viewport-recommendation-head{border-bottom:1px solid #a5cdd821;justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:10px 12px 9px 14px;display:flex}.viewport-recommendation-head>div{gap:1px;min-width:0;display:grid}.viewport-recommendation-kicker{color:var(--green-soft);letter-spacing:.08em;align-items:center;gap:6px;font-size:10px;font-weight:750;display:inline-flex}.viewport-recommendation-head strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.viewport-recommendation-head small{color:var(--muted);font-size:10px}.viewport-recommendation-collapse{border:1px solid var(--line);width:36px;height:36px;color:var(--muted);cursor:pointer;background:#06141bb8;border-radius:9px;flex:none;place-items:center;display:grid}.viewport-recommendation-collapse:hover{border-color:var(--line-strong);color:var(--green-soft)}.viewport-recommendation-body{overscroll-behavior:contain;min-height:0;padding:10px;overflow-y:auto}.viewport-recommendation-panel.is-collapsed .viewport-recommendation-body{display:none}.viewport-recommendation-actions{justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.viewport-recommendation-actions>span{min-width:0;color:var(--muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.viewport-recommendation-refresh{color:#dff8fb;cursor:pointer;background:#194c56c7;border:1px solid #79cfe270;border-radius:8px;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:11px;font-weight:750;display:inline-flex}.viewport-recommendation-refresh:hover:not(:disabled){border-color:var(--green);background:#25656fe0}.viewport-recommendation-refresh:disabled{border-color:var(--line);color:#71848a;cursor:not-allowed;background:#0718218f}.viewport-recommendation-empty,.viewport-recommendation-error{color:var(--muted);background:#030d138a;border:1px dashed #97d3e133;border-radius:10px;margin:0;padding:14px 12px;font-size:11px;line-height:1.65}.viewport-recommendation-error{color:#efb1a6;border-color:#cb77685c}.viewport-recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.viewport-recommendation-card{min-width:0;color:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition), transform var(--transition), background-color var(--transition);background:linear-gradient(145deg,#0b222cf0,#051119e6);border:1px solid #a5cdd829;border-radius:11px;gap:9px;padding:9px;display:flex;position:relative}.viewport-recommendation-card:hover{border-color:#79cfe28a;transform:translateY(-1px)}.viewport-recommendation-rank{color:#dff8fb;width:25px;height:25px;font-family:var(--font-mono);background:#1f5c66c2;border:1px solid #79cfe26b;border-radius:50%;flex:0 0 25px;place-items:center;font-size:11px;font-weight:800;display:grid}.viewport-recommendation-card-main{gap:3px;min-width:0;display:grid}.viewport-recommendation-card-title{justify-content:space-between;align-items:center;gap:5px;min-width:0;display:flex}.viewport-recommendation-card-title strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.viewport-recommendation-card-title em{color:#b9c7cb;background:#8494a521;border-radius:999px;flex:none;padding:2px 5px;font-size:8px;font-style:normal;font-weight:750}.viewport-recommendation-card-title em[data-band=priority]{color:#a7f4f0;background:#63e6e221}.viewport-recommendation-card-title em[data-band=recommended]{color:#b9edc9;background:#76d69b21}.viewport-recommendation-card-title em[data-band=watch]{color:#f1d29c;background:#e8bb7221}.viewport-recommendation-card-title em[data-band=not-recommended]{color:#efaaa4;background:#e9797921}.viewport-recommendation-card-main>small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.viewport-recommendation-stars{color:#52626a;gap:1px;font-size:10px;line-height:1;display:inline-flex}.viewport-recommendation-stars i{font-style:normal}.viewport-recommendation-stars i[data-filled=true]{color:#e4bf78;text-shadow:0 0 7px #e4bf783d}.viewport-recommendation-reason{color:#b5c5c9;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:27px;font-size:9px;line-height:1.45;display:-webkit-box;overflow:hidden}.viewport-recommendation-meta{flex-wrap:wrap;gap:3px;display:flex}.viewport-recommendation-meta b{color:#91a4ab;background:#79cfe20f;border-radius:4px;padding:2px 4px;font-size:8px;font-weight:550}.viewport-recommendation-note{color:#74888f;margin-top:9px;font-size:9px;line-height:1.55;display:block}.viewport-rank-marker{background:0 0;border:0}.viewport-rank-marker-dot{border:2px solid color-mix(in srgb, var(--viewport-rank-color) 80%, white 20%);color:#031018;background:var(--viewport-rank-color);width:30px;height:30px;box-shadow:0 0 0 3px #030e16c7, 0 6px 18px #00000080, 0 0 18px color-mix(in srgb, var(--viewport-rank-color) 35%, transparent);transform:scale(var(--viewport-rank-scale));border-radius:50%;place-items:center;transition:transform .15s;display:grid}.viewport-rank-marker-dot b{font-family:var(--font-mono);font-size:11px;font-weight:900}.viewport-rank-tooltip{gap:2px;display:grid}.viewport-rank-tooltip b{color:#eef7f7;font-size:11px}.viewport-rank-tooltip small{color:#9eb1b7;font-size:9px}.is-spinning{animation:.8s linear infinite viewport-recommendation-spin}@keyframes viewport-recommendation-spin{to{transform:rotate(360deg)}}@media (min-width:1181px){.map-stage:has(.viewport-recommendation-panel:not(.is-collapsed)) .map-view-actions{right:466px}}@media (max-width:1180px) and (min-width:769px){.viewport-recommendation-panel{width:360px}.viewport-recommendation-grid{grid-template-columns:1fr}}@media (max-width:768px){.viewport-recommendation-panel{z-index:980;width:calc(100% - 20px);max-height:min(54dvh,500px);bottom:10px;right:10px}.viewport-recommendation-panel.is-collapsed{width:calc(100% - 20px);max-height:64px;bottom:10px;right:10px}.viewport-recommendation-head{min-height:62px;padding:8px 9px 8px 12px}.viewport-recommendation-grid{grid-template-columns:1fr}.viewport-recommendation-card{min-height:104px}.viewport-recommendation-actions{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.viewport-recommendation-card,.viewport-rank-marker-dot{transition:none}.is-spinning{animation:none}}
@media (max-width:768px){.viewport-recommendation-panel:not(.is-collapsed){z-index:1150}}
.map-panel-managed{transform:translate3d(var(--map-panel-x,0), var(--map-panel-y,0), 0) scale(var(--map-panel-scale,1));will-change:transform;transition:transform .16s,box-shadow .16s}.map-panel-managed.is-panel-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none;transition:none;box-shadow:0 22px 54px #00000094}.map-panel-drag-handle{cursor:grab;touch-action:none}.map-panel-drag-handle:active{cursor:grabbing}.observing-map-control.map-panel-managed{width:clamp(320px,22vw,390px);max-width:calc(100vw - 32px)}.cloud-control.map-panel-managed{width:clamp(330px,23vw,420px);max-width:calc(100vw - 32px)}.observing-map-control.map-panel-managed,.cloud-control.map-panel-managed{font-size:13px;line-height:1.45}.observing-map-control.map-panel-managed :is(button,select,input),.cloud-control.map-panel-managed :is(button,select,input){font-size:12px}.observing-map-control.map-panel-managed>small,.cloud-control.map-panel-managed small,.source-status-panel,.source-status-help{font-size:11px;line-height:1.5}.observing-map-control-title b,.cloud-control-head b{font-size:14px}.map-panel-manager{z-index:930;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:14px;right:18px}.map-panel-manager-toggle{width:38px;height:38px;color:var(--muted);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#041219e0;border:1px solid #79cfe252;border-radius:50%;place-items:center;transition:color .16s,border-color .16s;display:grid;box-shadow:0 12px 28px #00000052}.map-panel-manager-toggle:hover,.map-panel-manager[data-open=true] .map-panel-manager-toggle{color:var(--green,#79cfe2);border-color:#79cfe28c}.map-panel-manager-body{min-height:40px;color:var(--muted);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#041219eb;border:1px solid #79cfe252;border-radius:11px;grid-template-columns:auto minmax(116px,auto) minmax(140px,210px) 34px;align-items:center;gap:7px;padding:8px;display:grid;box-shadow:0 14px 34px #00000061}.map-panel-manager-title{color:var(--green-soft);white-space:nowrap;align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.map-panel-manager-body select,.map-panel-reset{border:1px solid var(--line);min-height:30px;color:var(--text);background:#0a1f28eb;border-radius:7px}.map-panel-manager-body select{padding:0 8px;font-size:11px}.map-panel-scale-control{grid-template-columns:14px 38px 1fr;align-items:center;gap:5px;font-size:10px;display:grid}.map-panel-scale-control input{width:100%;accent-color:var(--green)}.map-panel-reset{cursor:pointer;place-items:center;display:grid}.map-panel-manager>small{grid-column:1/-1;font-size:9px;display:none}.map-panel-manager:hover>small,.map-panel-manager:focus-within>small{display:block}.cloud-mode-tabs{grid-template-columns:1fr!important;gap:7px!important;display:grid!important}.cloud-mode-tabs button.cloud-channel-bar{isolation:isolate;text-align:left;grid-template-columns:1fr auto;align-items:center;min-height:40px;position:relative;overflow:hidden;background:#04141de0!important;border-radius:9px!important;padding:7px 11px!important;display:grid!important}.cloud-mode-tabs button.cloud-channel-bar:before{content:"";z-index:-1;width:var(--cloud-channel-value,0%);background:linear-gradient(90deg, color-mix(in srgb, var(--cloud-channel-accent) 32%, transparent), color-mix(in srgb, var(--cloud-channel-accent) 10%, transparent));transition:width .22s;position:absolute;inset:0 auto 0 0}.cloud-mode-tabs button.cloud-channel-bar:after{content:"";background:linear-gradient(90deg, var(--cloud-channel-accent), transparent);opacity:.42;height:2px;position:absolute;bottom:0;left:0;right:0}.cloud-mode-tabs button.cloud-channel-bar span{color:#dceaf0;font-size:12px;font-weight:650}.cloud-mode-tabs button.cloud-channel-bar b{color:var(--cloud-channel-accent);font-variant-numeric:tabular-nums;font-size:14px}.cloud-mode-tabs button.cloud-channel-bar.active{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--cloud-channel-accent) 45%, transparent);border-color:var(--cloud-channel-accent)!important}.map-boundary-status{z-index:720;max-width:min(360px,100% - 36px);color:var(--muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#041219c2;border:1px solid #79cfe238;border-radius:9px;align-items:center;gap:6px;padding:7px 10px;font-size:10px;display:inline-flex;position:absolute;bottom:18px;right:18px}.map-boundary-status.available{color:#aee9d0}.map-boundary-status.unavailable{color:#e8c27d}.bortle-control.map-panel-managed .bortle-unavailable-label{font-weight:650;color:#e8c27d!important;font-size:10px!important}.nav-tab{gap:1px;line-height:1.1;display:grid}.nav-tab .nav-tab-hint{color:var(--muted);letter-spacing:0;font-size:9px;font-weight:500}.nav-tab.active .nav-tab-hint{color:color-mix(in srgb, var(--green-soft) 72%, var(--muted))}.nearby-ranking-panel{z-index:2600;width:min(390px,100vw - 36px);color:var(--text);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#041219f0;border:1px solid #79cfe247;border-radius:12px;position:fixed;bottom:18px;left:18px;box-shadow:0 18px 48px #0000007a}.nearby-ranking-toggle{width:100%;min-height:44px;color:var(--green-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 12px;font-weight:750;display:flex}.nearby-ranking-toggle span{text-align:left;flex:1}.nearby-ranking-body{gap:10px;max-height:min(68dvh,620px);padding:0 12px 12px;display:grid;overflow-y:auto}.nearby-ranking-body>header{justify-content:space-between;align-items:end;gap:10px;padding-top:4px;display:flex}.nearby-ranking-body>header div{min-width:0;display:grid}.nearby-ranking-body>header small{color:var(--muted);font-size:10px}.nearby-ranking-body>header strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nearby-ranking-body>header label{color:var(--muted);gap:3px;font-size:10px;display:grid}.nearby-ranking-body select{border:1px solid var(--line);min-height:32px;color:var(--text);background:#0b2029;border-radius:7px}.nearby-ranking-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.nearby-ranking-list a{border:1px solid var(--line);min-height:58px;color:inherit;background:#0a1f28b3;border-radius:9px;grid-template-columns:26px 1fr auto 14px;align-items:center;gap:8px;padding:7px 9px;text-decoration:none;display:grid}.nearby-ranking-list a:hover{border-color:var(--green);background:#0f3039e6}.nearby-rank-index{border:1px solid var(--green);width:24px;height:24px;color:var(--green-soft);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.nearby-rank-copy{min-width:0;display:grid}.nearby-rank-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nearby-rank-copy small{color:#9eb0b8;font-size:10px}.nearby-rank-copy em{color:var(--muted);font-size:10px;font-style:normal}.nearby-rank-score{justify-items:end;font-style:normal;display:grid}.nearby-rank-score b{font-variant-numeric:tabular-nums;font-size:16px}.nearby-rank-score small{font-size:9px}.nearby-ranking-empty,.nearby-ranking-note{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.nearby-ranking-note{border-top:1px solid var(--line);padding-top:4px}@media (max-width:1100px){.map-panel-manager{grid-template-columns:auto 110px 34px;inset:auto 12px 12px auto;transform:none}.map-panel-manager-title{display:none}.map-panel-scale-control{grid-column:1/3}.map-boundary-status{max-width:280px;bottom:14px;left:14px;right:auto}}@media (max-width:768px){.observing-map-control.map-panel-managed,.cloud-control.map-panel-managed{max-width:calc(100vw - 36px);transform-origin:0 0!important}.map-panel-manager{width:min(270px,100vw - 20px);top:auto;bottom:10px;right:10px}.map-panel-manager select{min-width:0}.map-boundary-status{display:none}.nearby-ranking-panel{width:auto;bottom:12px;left:12px;right:12px}.nearby-ranking-body{max-height:58dvh}.nav-tab .nav-tab-hint{display:none}}
.mobile-map-panel-dock{display:none}@media (max-width:768px),(max-height:520px) and (max-width:1024px){.mobile-map-panel-dock{z-index:1760;pointer-events:none;display:block;position:absolute;inset:0}.mobile-map-panel-rail{top:50%;right:max(8px, env(safe-area-inset-right));z-index:3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;background:#030e15e6;border:1px solid #79cfe257;border-radius:14px;gap:5px;padding:5px;display:grid;position:absolute;transform:translateY(-50%);box-shadow:0 12px 32px #00000075}.mobile-map-panel-rail button{width:46px;min-height:48px;color:var(--muted);letter-spacing:.04em;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;gap:2px;padding:4px 2px;font-size:9px;font-weight:700;display:grid}.mobile-map-panel-rail button.active,.mobile-map-panel-rail button:focus-visible{color:var(--green-soft);background:#79cfe21f;border-color:#79cfe285;outline:none}.mobile-map-panel-dock.is-open .mobile-map-panel-rail{visibility:hidden;pointer-events:none}.mobile-map-panel-backdrop{z-index:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto;background:#00050994;border:0;width:100%;height:100%;position:absolute;inset:0}.mobile-map-panel-drawer{z-index:2;pointer-events:auto;background:radial-gradient(circle at 100% 0,#79cfe21a,#0000 34%),linear-gradient(#05141dfc,#020a10fc);border-left:1px solid #79cfe257;grid-template-rows:auto auto minmax(0,1fr);width:min(88vw,420px);transition:transform .18s;display:grid;position:absolute;top:0;bottom:0;right:0;overflow:hidden;transform:translate(102%);box-shadow:-18px 0 48px #00000085}.mobile-map-panel-dock.is-open .mobile-map-panel-drawer{transform:translate(0)}.mobile-map-panel-drawer-head{min-height:62px;padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 10px 14px;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-map-panel-drawer-head>div{gap:2px;min-width:0;display:grid}.mobile-map-panel-drawer-head span{color:var(--green-soft);letter-spacing:.12em;font-size:9px;font-weight:750}.mobile-map-panel-drawer-head strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.mobile-map-panel-drawer-head>button{border:1px solid var(--line);width:42px;height:42px;color:var(--muted);cursor:pointer;background:#071a23d6;border-radius:11px;flex:0 0 42px;place-items:center;display:grid}.mobile-map-panel-drawer-head>button:focus-visible{border-color:var(--green);color:var(--green-soft);outline-offset:2px;outline:2px solid #79cfe240}.mobile-map-panel-tabs{border-bottom:1px solid var(--line);background:#020b11b8;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:8px 10px;display:grid}.mobile-map-panel-tabs button{min-width:0;min-height:42px;color:var(--muted);cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:6px 4px;font-size:10px;font-weight:700;display:inline-flex}.mobile-map-panel-tabs button.active{color:var(--green-soft);background:#79cfe21a;border-color:#79cfe26b}.mobile-map-panel-body{overscroll-behavior:contain;min-height:0;padding:10px max(10px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) 10px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;overflow-y:auto}.mobile-map-panel-pane{align-content:start;gap:12px;min-width:0;display:grid}.mobile-map-panel-pane[hidden]{display:none!important}.map-stage .mobile-map-panel-drawer .map-layer-bar,.map-stage .mobile-map-panel-drawer .map-view-actions,.map-stage .mobile-map-panel-drawer .forecast-theme-switch,.map-stage .mobile-map-panel-drawer .bortle-control,.map-stage .mobile-map-panel-drawer .cloud-control,.map-stage .mobile-map-panel-drawer .observing-map-control,.map-stage .mobile-map-panel-drawer .viewport-recommendation-panel,.map-stage .mobile-map-panel-drawer .map-legend,.map-stage .mobile-map-panel-drawer .map-boundary-status{width:100%!important;max-width:none!important;margin:0!important;position:static!important;inset:auto!important;transform:none!important}.map-stage .mobile-map-panel-drawer .map-layer-bar{border-radius:12px;flex-wrap:wrap;justify-content:flex-start;overflow:visible;display:flex!important}.map-stage .mobile-map-panel-drawer .map-layer-bar>button{flex:112px;justify-content:center}.map-stage .mobile-map-panel-drawer .map-layer-sub{border-left:0;border-top:1px solid var(--line);flex:100%;justify-content:center;margin:0;padding-top:5px}.map-stage .mobile-map-panel-drawer .forecast-theme-switch{justify-self:stretch;display:inline-flex!important}.map-stage .mobile-map-panel-drawer .forecast-theme-switch button{flex:1 1 0;justify-content:center}.map-stage .mobile-map-panel-drawer .map-view-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid!important}.map-stage .mobile-map-panel-drawer .boundary-legend{grid-column:1/-1}.map-stage .mobile-map-panel-drawer .bortle-control,.map-stage .mobile-map-panel-drawer .map-legend,.map-stage .mobile-map-panel-drawer .map-boundary-status{display:flex!important}.map-stage .mobile-map-panel-drawer .bortle-control{flex-direction:column;align-items:stretch}.map-stage .mobile-map-panel-drawer .map-legend{flex-wrap:wrap;justify-content:flex-start}.map-stage .mobile-map-panel-drawer .cloud-control.compact,.map-stage .mobile-map-panel-drawer .observing-map-control,.map-stage .mobile-map-panel-drawer .viewport-recommendation-panel{max-height:none!important;overflow:visible!important}.map-stage .mobile-map-panel-drawer .observing-map-control[data-docked=true]>:not(.observing-map-control-title){display:revert-layer}.map-stage .mobile-map-panel-drawer .viewport-recommendation-panel.is-collapsed{max-height:none!important}.map-stage .mobile-map-panel-drawer .viewport-recommendation-panel.is-collapsed .viewport-recommendation-body{display:block}.map-stage .mobile-map-panel-drawer .viewport-recommendation-collapse{display:none}.map-stage .mobile-map-panel-drawer .viewport-recommendation-grid,.map-stage .mobile-map-panel-drawer .source-status-panel{grid-template-columns:1fr}.map-stage .mobile-map-panel-drawer .cloud-control,.map-stage .mobile-map-panel-drawer .observing-map-control,.map-stage .mobile-map-panel-drawer .viewport-recommendation-panel{box-shadow:none}}@media (max-height:520px) and (max-width:1024px){.mobile-map-panel-drawer{width:min(66vw,470px)}.mobile-map-panel-rail{grid-template-columns:repeat(2,46px)}.mobile-map-panel-drawer-head{min-height:54px;padding-top:7px;padding-bottom:7px}.mobile-map-panel-tabs{padding-block:5px}.mobile-map-panel-tabs button{min-height:36px}}@media (prefers-reduced-motion:reduce){.mobile-map-panel-drawer{transition:none}}
