/* Tour DooH global (global-tour.js): marca y raíl de estados arriba, ficha de la puerta abajo. */
.gt-hud{position:fixed;top:68px;left:50%;transform:translateX(-50%);z-index:11;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 18px;border-radius:16px;background:linear-gradient(180deg,var(--gt-bg-top,rgba(0,34,24,.93)),var(--gt-bg-bottom,rgba(3,18,13,.9)));border:1px solid color-mix(in srgb,var(--gt-accent) 55%,transparent);box-shadow:0 18px 48px rgba(0,0,0,.45);color:#fff;font:13px/1.35 system-ui,-apple-system,'Segoe UI',sans-serif;pointer-events:none;max-width:calc(100vw - 32px);box-sizing:border-box;animation:gt-hud-in .5s ease both}
.gt-brand{display:flex;align-items:center;gap:12px;min-width:0}
.gt-dot{width:30px;height:30px;border-radius:50%;flex:none;background:radial-gradient(circle at 35% 35%,#fff 0 18%,var(--gt-accent) 19% 100%);box-shadow:0 0 0 3px rgba(255,255,255,.12),0 0 18px var(--gt-accent)}
.gt-brand strong{display:block;font-size:17px;letter-spacing:.01em}
.gt-sub{display:block;font-size:12px;color:var(--gt-light);opacity:.92}
.gt-rail{display:flex;gap:6px;margin:0;padding:0;list-style:none}
.gt-rail li{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:38px;padding:4px 4px 3px;border-radius:9px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);transition:background .35s,border-color .35s,transform .35s,box-shadow .35s}
.gt-rail b{font-size:12px}
.gt-rail span{font-size:9.5px;letter-spacing:.06em;opacity:.85}
.gt-rail li.done{background:var(--gt-deep);border-color:var(--gt-accent)}
.gt-rail li.current{background:#fff;color:var(--gt-deep);border-color:#fff;transform:translateY(-2px);box-shadow:0 0 16px var(--gt-accent)}
.gt-card{position:fixed;left:24px;bottom:72px;z-index:11;display:flex;gap:14px;align-items:center;width:min(430px,calc(100vw - 48px));box-sizing:border-box;padding:14px 18px 14px 16px;border-radius:16px;background:var(--gt-bg-card,rgba(3,18,13,.93));border:1px solid color-mix(in srgb,var(--gt-accent) 55%,transparent);border-left:5px solid var(--gt-accent);box-shadow:0 18px 48px rgba(0,0,0,.5);color:#fff;font:13px/1.4 system-ui,-apple-system,'Segoe UI',sans-serif;pointer-events:none;animation:gt-card-in .45s ease both}
.gt-card[hidden]{display:none}
/* Con el modo experto abierto, el sello de versión (#admira-sello-chip, 60 px sobre el borde y 25 de alto)
   queda encima del dock: la ficha sube por encima del sello en vez de pisarlo. */
@media (min-width:761px){body.mode-expert-open .gt-card{bottom:100px}}
.gt-card-num{display:flex;align-items:baseline;font:700 40px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--gt-accent)}
.gt-card-num small{font-size:14px;opacity:.7;margin-left:2px}
.gt-card-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.gt-card-kicker{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gt-accent)}
.gt-card-body strong{font-size:17px}
.gt-card-street{color:var(--gt-street,#dfeee8)}
.gt-card-stats{font-size:12px;color:var(--gt-stats,#a9cbbf)}
/* Durante el tour, la ficha y el raíl ya dicen dónde estamos: fuera la píldora «Buscando…» y el
   ticker de actividad (Xpaces, pantallas), que además quedaba debajo de la ficha de la puerta. */
body.gt-on .status-pill,body.gt-on .live-ticker{display:none!important}
@keyframes gt-hud-in{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes gt-card-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (max-width:760px){
  .gt-hud{top:60px;padding:8px 10px;gap:7px;width:calc(100vw - 24px)}
  .gt-dot{width:22px;height:22px}
  .gt-brand strong{font-size:14px}
  .gt-sub{font-size:10.5px}
  .gt-rail{gap:3px}
  .gt-rail li{min-width:0;width:30px;padding:3px 0}
  .gt-rail span{font-size:7.5px}
  .gt-card{left:12px;right:12px;bottom:124px;width:auto;padding:10px 12px}
  .gt-card-num{font-size:28px}
  .gt-card-body strong{font-size:15px}
  /* En el móvil el raíl de estados ya da la vista global: fuera panel de circuito y minimapa. */
  body.gt-on .circuit-panel,body.gt-on .cenital-floating{display:none!important}
}
@media (prefers-reduced-motion:reduce){.gt-hud,.gt-card{animation:none}.gt-rail li{transition:none}}
/* The three Spanish destinations stay visible throughout every camera flight. */
.gt-health{position:fixed;right:24px;top:220px;z-index:12;width:290px;box-sizing:border-box;padding:18px;border:1px solid #39866a;border-radius:16px;background:linear-gradient(145deg,#1e3932f5,#10251ff5);box-shadow:0 16px 48px #0007;color:#d4e9e2;font:13px/1.4 system-ui}
.gt-health>strong{font-size:17px;color:white}.gt-health>small{display:block;margin-top:14px;font-size:10px;color:#bad1c8}
.gt-health-row{display:grid;gap:4px;margin-top:12px;padding:12px;background:#ffffff08;border-radius:10px;border-left:3px solid #94a3b8}
.gt-health-row b{color:white}.gt-health-row span{color:#cbd5e1}.gt-health-row small{font-size:10px}
.gt-health-row[data-state=online]{border-color:#22c55e}.gt-health-row[data-state=online] span{color:#86efac}
.gt-health-row[data-state=offline]{border-color:#ef4444}.gt-health-row[data-state=offline] span{color:#fca5a5}
.gt-health-row[data-state=partial]{border-color:#facc15}.gt-health-row[data-state=partial] span{color:#fde047}
@media(max-width:760px){.gt-health{top:174px;right:12px;width:230px;padding:10px}.gt-health-row{margin-top:6px;padding:7px}.gt-health>strong{font-size:14px}.gt-health>small{margin-top:7px}}

body.gt-on:has(.gt-health) .cenital-floating{display:none!important}
.gt-health{width:330px;max-height:calc(100vh - 280px);overflow:auto}
.gt-health-players{display:grid;gap:3px;margin-top:5px}.gt-health-players small{overflow-wrap:anywhere}
.gt-health-players [data-state=online]{color:#86efac}.gt-health-players [data-state=offline],.gt-health-players [data-state=fault]{color:#fca5a5}
@media(max-width:760px){.gt-health{width:260px;max-height:calc(100vh - 300px)}}
.gt-health-physical{display:grid;gap:5px;font-size:11px;margin-top:6px}.gt-health-physical a{color:#fde047;text-decoration:underline}
.gt-health-players summary{cursor:pointer;color:#d4e9e2;font-size:11px}.gt-health-players:not([open]){display:block}.gt-health-players[hidden]{display:none}.gt-health-players small{display:block;margin-top:3px}

/* México: ciudad y formato primero; lectura acompasada con la estancia real. */
.gt-hud.gt-mexico{width:min(890px,calc(100vw - 48px));align-items:stretch;padding:17px 22px;gap:14px;border-color:#d9bf8c55;border-radius:20px;background:linear-gradient(120deg,#10251ff5,#1e3932ef)}
.gt-mexico .gt-brand strong{font-size:20px;letter-spacing:-.02em}
.gt-mexico .gt-rail{justify-content:space-between;gap:4px}
.gt-mexico .gt-rail li{flex:1;min-width:0;padding:7px 3px;border:0;background:#ffffff08}
.gt-mexico .gt-rail span{font-size:10px;letter-spacing:0;text-align:center}
.gt-mexico .gt-rail li.current{background:#d4e9e2;color:#10251f;box-shadow:0 3px 18px #0003}
.gt-journey{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #d4e9e225;padding-top:10px;color:#d4e9e2;font-size:12px}
.gt-journey b{color:white;font-weight:650}
.gt-card.gt-mexico{width:390px;padding:24px;overflow:hidden;border-left:0;border-top:3px solid #d9bf8c;background:linear-gradient(145deg,#1e3932fa,#10251ffa)}
.gt-mexico .gt-card-body{gap:7px;width:100%}
.gt-mexico .gt-card-kicker{color:#d9bf8c;font-size:10px}
.gt-mexico .gt-card-body .gt-city{font-size:34px;line-height:1.05;letter-spacing:-.035em}
.gt-store-name{font-size:14px;color:white}.gt-mexico .gt-card-street{font-size:12px}
.gt-format{align-self:flex-start;margin-top:6px;padding:6px 9px;border:1px solid #d9bf8c66;border-radius:6px;font-size:11px;color:#f3dfb5;letter-spacing:.04em}
.gt-next{margin-top:8px;padding-top:10px;border-top:1px solid #ffffff20;font-size:11px;color:#d4e9e2}
.gt-reading-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;background:#d9bf8c;transform-origin:left;animation:gt-read var(--gt-dwell) linear both}
@keyframes gt-read{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:760px){
 .gt-hud.gt-mexico{width:calc(100vw - 24px);padding:12px;gap:9px}
 .gt-mexico .gt-brand strong{font-size:16px}
 .gt-mexico .gt-rail{gap:2px}.gt-mexico .gt-rail li{width:auto;padding:5px 0}
 .gt-mexico .gt-rail span{display:none}.gt-mexico .gt-rail li.current span{display:block;position:absolute;top:100%;padding-top:3px;font-size:9px;white-space:nowrap}
 .gt-mexico .gt-rail{padding-bottom:12px}.gt-journey{font-size:10px;flex-wrap:wrap;gap:4px}
 .gt-card.gt-mexico{width:auto;padding:16px;bottom:124px}.gt-mexico .gt-card-body .gt-city{font-size:28px}
}
@media(prefers-reduced-motion:reduce){.gt-reading-progress{animation:none;transform:none}}
@media(max-width:760px){
 .gt-hud.gt-mexico{top:110px}
 .gt-mexico .gt-rail li{position:relative}
}
@media(max-width:760px) and (max-height:700px){
 .gt-card.gt-mexico{bottom:80px;padding:12px}
 .gt-mexico .gt-card-body{gap:4px}
 .gt-mexico .gt-card-body .gt-city{font-size:23px}
 .gt-mexico .gt-next{margin-top:3px;padding-top:5px}
}

.gt-rail li[hidden]{display:none}
