/* Pagina /satelit/ (comparator înainte/după): harta e protagonistul, restul rămâne discret */
.sat-app{margin:6px 0 26px}
.sat-lead{font:500 18px/1.5 var(--f-body);color:var(--ink);max-width:62ch;margin:6px 0 16px}
#sat-places{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:2px 2px 6px}
#sat-places::-webkit-scrollbar{display:none}
#sat-places button{flex:0 0 auto;font:600 14px/1 var(--f-body);color:var(--ink);background:var(--panel);border:1px solid var(--rule);padding:11px 16px;border-radius:999px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
#sat-places button:hover{border-color:var(--accent)}
#sat-places button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
#sat-places button:focus-visible,.sat-dock button:focus-visible,.sat-dock input:focus-visible{outline:3px solid var(--sel);outline-offset:2px}

/* harta */
#sat-map{position:relative;height:min(74vh,740px);min-height:380px;border-radius:14px;overflow:hidden;background:#0d1a20;border:1px solid var(--rule);box-shadow:0 10px 30px -12px rgba(8,20,28,.5)}
.sat-tag{position:absolute;top:14px;z-index:950;max-width:44%;font:700 19px/1.15 var(--f-head);letter-spacing:-.01em;color:#fff;background:rgba(10,22,29,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:9px 13px 10px;border-radius:10px;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.sat-tag small{display:block;font:600 12px/1.2 var(--f-body);color:rgba(255,255,255,.72);margin-bottom:3px;letter-spacing:.01em}
#sat-ta{left:14px}
#sat-tb{right:14px;text-align:right}
.sat-cap{position:absolute;left:14px;bottom:14px;z-index:950;max-width:min(360px,calc(100% - 100px));color:#fff;background:rgba(10,22,29,.66);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:11px 14px 12px;border-radius:10px;pointer-events:none}
.sat-cap b{display:block;font:700 16px/1.2 var(--f-head);margin-bottom:4px}
.sat-cap span{display:block;font:500 13.5px/1.4 var(--f-body);color:rgba(255,255,255,.86)}
.sat-busy{position:absolute;top:14px;left:50%;transform:translateX(-50%);z-index:960;max-width:calc(100% - 40px);font:600 13px/1.3 var(--f-body);color:#fff;background:rgba(10,22,29,.82);padding:8px 14px 8px 36px;border-radius:999px;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sat-busy::before{content:'';position:absolute;left:13px;top:50%;width:13px;height:13px;margin-top:-7px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:satspin .8s linear infinite}
.sat-busy[hidden]{display:none}
@keyframes satspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.sat-busy::before{animation-duration:2.4s}}

/* glisorul: linie + mâner cu săgeți */
#sat-line{position:absolute;top:0;bottom:0;width:3px;margin-left:-1.5px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.28),0 0 14px rgba(0,0,0,.35);z-index:900;pointer-events:none}
#sat-div{position:absolute;left:0;right:0;top:50%;width:100%;margin:0;transform:translateY(-50%);z-index:1000;height:56px;background:transparent;-webkit-appearance:none;appearance:none;pointer-events:none}
#sat-div::-webkit-slider-runnable-track{background:transparent;height:56px}
#sat-div::-moz-range-track{background:transparent;height:56px}
#sat-div::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;pointer-events:auto;cursor:ew-resize;width:46px;height:46px;margin-top:5px;border-radius:50%;border:0;box-shadow:0 2px 12px rgba(0,0,0,.5);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l-6 6 6 6M15 6l6 6-6 6' fill='none' stroke='%231a68aa' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/28px no-repeat}
#sat-div::-moz-range-thumb{pointer-events:auto;cursor:ew-resize;width:46px;height:46px;border-radius:50%;border:0;box-shadow:0 2px 12px rgba(0,0,0,.5);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l-6 6 6 6M15 6l6 6-6 6' fill='none' stroke='%231a68aa' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/28px no-repeat}
#sat-div:focus-visible::-webkit-slider-thumb{outline:3px solid var(--sel);outline-offset:2px}
#sat-div:focus-visible::-moz-range-thumb{outline:3px solid var(--sel);outline-offset:2px}

/* butoanele de zoom ale hărții, în tonul site-ului */
#sat-map .leaflet-bar{border:0;box-shadow:0 2px 10px rgba(0,0,0,.4);border-radius:10px;overflow:hidden}
#sat-map .leaflet-bar a{width:36px;height:36px;line-height:36px;font:600 20px/36px var(--f-body);background:rgba(255,255,255,.94);color:#16232b;border-bottom-color:#d4dde0}
#sat-map .leaflet-bar a:hover{background:#fff;color:var(--accent)}

/* sub hartă: data fiecărei jumătăți, aliniată cu jumătatea ei */
.sat-dock{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:end;margin-top:12px}
.sat-ctl:last-child{justify-self:end;text-align:right}
.sat-ctl{min-width:0;width:100%;max-width:340px}
.sat-ctl:last-child{margin-left:auto}
.sat-ctl label{display:block;font:600 13px/1 var(--f-body);color:var(--muted);margin-bottom:6px}
.sat-ctl .row{display:flex;gap:6px}
.sat-ctl input{flex:1;min-width:0;font:500 15px/1 var(--f-body);padding:10px 10px;border:1px solid var(--rule);border-radius:8px;background:var(--panel);color:var(--ink)}
.sat-dock button{font:600 13px/1.1 var(--f-body);border:1px solid var(--rule);background:var(--panel);color:var(--accent);padding:0 13px;border-radius:8px;cursor:pointer;min-height:40px}
.sat-dock button:hover{border-color:var(--accent);background:var(--accent-soft)}
.sat-share{color:var(--ink)!important;align-self:end}
#sat-st{font:500 13px/1.4 var(--f-body);color:var(--muted);margin:8px 0 0;min-height:1.4em}

@media (max-width:720px){
  .sat-lead{font-size:16px}
  #sat-places{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  #sat-map{height:68vh;min-height:360px;border-radius:12px}
  .sat-tag{font-size:16px;padding:7px 10px 8px;max-width:46%}
  .sat-cap{right:14px;max-width:none;bottom:14px;padding:9px 12px 10px}
  .sat-cap span{font-size:12.5px}
  #sat-map .leaflet-bottom.leaflet-right{bottom:96px}
  .sat-dock{grid-template-columns:1fr;gap:10px}
  .sat-ctl{max-width:none}
  .sat-ctl:last-child{margin-left:0;justify-self:stretch;text-align:left}
  .sat-share{width:100%;min-height:44px;order:3}
  .sat-cap span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  #sat-places{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
}
