/* GlobalSignal v3.14.2 SAFE — isolated interface polish. */

/* Consistent status signalling without changing layout or feed logic. */
.gs-loading-status{display:inline-flex!important;align-items:center;gap:7px}
.gs-loading-status:before{content:'';width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 0 color-mix(in srgb,var(--mint) 34%,transparent);animation:gs-ui-status-pulse 1.35s ease-out infinite}
@keyframes gs-ui-status-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--mint) 40%,transparent);opacity:.9}70%{box-shadow:0 0 0 6px transparent;opacity:1}100%{box-shadow:0 0 0 0 transparent;opacity:.72}}
.gs-loading-placeholder{position:relative;overflow:hidden!important;background:color-mix(in srgb,var(--field) 48%,transparent)!important;color:color-mix(in srgb,var(--muted) 92%,transparent)!important;border-radius:5px}
.gs-loading-placeholder:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 20%,color-mix(in srgb,var(--muted) 9%,transparent) 43%,transparent 66%);background-size:220% 100%;animation:gs-ui-shimmer 1.55s ease-in-out infinite}
@keyframes gs-ui-shimmer{0%{background-position:110% 0}100%{background-position:-120% 0}}

/* Lightly tighten the already-grouped layer dock, while preserving native checkboxes. */
.map-layer-dock .layer-accordion-body{padding:4px}
.map-layer-dock .layer{margin:2px 0;border:1px solid transparent;border-radius:5px;padding:7px 7px;transition:background-color .14s ease,border-color .14s ease}
.map-layer-dock .layer:has(input:checked){background:color-mix(in srgb,var(--field) 58%,transparent);border-color:color-mix(in srgb,var(--line) 70%,transparent)}
.map-layer-dock .layer:hover{border-color:color-mix(in srgb,var(--muted) 28%,var(--line));background:color-mix(in srgb,var(--field) 78%,transparent)}
.map-layer-dock .layer-accordion>summary{padding-top:9px;padding-bottom:9px}
.map-layer-dock .overlay-symbol{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:4px;background:color-mix(in srgb,var(--field) 72%,transparent);border:1px solid color-mix(in srgb,var(--line) 86%,transparent)}

/* Short analytical map pulse: click-driven only, never continuous. */
.gs-map-pulse-host{background:none!important;border:0!important;pointer-events:none!important}
.gs-map-pulse-ring{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid var(--mint);border-radius:50%;background:color-mix(in srgb,var(--mint) 16%,transparent);box-shadow:0 0 16px color-mix(in srgb,var(--mint) 52%,transparent);animation:gs-map-ripple 1.75s ease-out forwards}
.gs-map-pulse-ring.critical{border-color:#f58273;background:#f5827320;box-shadow:0 0 18px #f5827388}
.gs-map-pulse-ring.correlator{border-color:#efab73;background:#efab7320;box-shadow:0 0 18px #efab7388;animation-delay:.08s}
@keyframes gs-map-ripple{0%{transform:scale(.45);opacity:0}12%{opacity:1}72%{opacity:.5}100%{transform:scale(3.05);opacity:0}}

/* Shipping log becomes a scan-friendly vertical timeline. */
.release-list{position:relative;padding:4px 0}
.release-item{position:relative;margin-left:31px;padding:15px 20px 16px 17px;border-bottom:0!important}
.release-item:before{content:'';position:absolute;left:-16px;top:21px;width:8px;height:8px;border-radius:50%;background:var(--panel);border:2px solid color-mix(in srgb,var(--muted) 68%,var(--line));z-index:2}
.release-item:after{content:'';position:absolute;left:-11px;top:0;bottom:0;width:1px;background:var(--line)}
.release-item:first-child:after{top:25px}.release-item:last-child:after{bottom:calc(100% - 25px)}
.release-item.current:before{border-color:var(--mint);background:var(--mint);box-shadow:0 0 0 4px color-mix(in srgb,var(--mint) 11%,transparent)}
.release-item>div{justify-content:flex-start!important;gap:9px!important;flex-wrap:wrap}
.release-item strong{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:999px;padding:4px 8px;background:color-mix(in srgb,var(--field) 58%,transparent)}
.release-item.current strong{border-color:color-mix(in srgb,var(--mint) 42%,var(--line));background:color-mix(in srgb,var(--mint) 8%,transparent)}
.release-item ul{margin-top:8px!important}

/* Terminal-style command hints. */
.command-close-group>span,.command-hint span{border:1px solid color-mix(in srgb,var(--line) 92%,transparent);border-radius:999px;padding:5px 8px;background:color-mix(in srgb,var(--field) 56%,transparent)}
.command-hint{gap:7px!important}.command-hint kbd,.command-close-group kbd{border:0;background:transparent;box-shadow:none;padding:0;color:var(--text)}

@media(max-width:620px){
  .map-layer-dock .layer{padding:8px 7px;margin:2px 0}
  .release-item{margin-left:25px;padding:13px 14px 14px 15px}
  .release-item:before{left:-14px}.release-item:after{left:-9px}
  .command-hint span{padding:5px 7px}
}
@media(prefers-reduced-motion:reduce){.gs-loading-status:before,.gs-loading-placeholder:after,.gs-map-pulse-ring{animation:none!important}.gs-map-pulse-ring{display:none}}
