/* The Global globe (task Q3d, V2). Colours come from the site tokens; the globe has its own dark set. The stage and the card box are left-to-right on purpose (a globe is not mirrored in Arabic); the text inside the card follows the page. */
#globe[hidden]{display:none}
.gl-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);grid-template-areas:"copy wrap" "panel wrap";grid-template-rows:auto auto;align-content:center;column-gap:var(--s-6);row-gap:var(--s-4)}
.gl-card:has(.gl-wrap[hidden]){grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "panel"}
@media (max-width:820px){.gl-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "wrap" "panel"}}
.gl-copy{grid-area:copy;display:grid;gap:var(--s-3);align-content:end}
.gl-copy h2,.gl-copy .lead,.gl-live{margin:0}
.gl-live{font-size:var(--fs-14);font-weight:var(--fw-semibold);color:var(--ink-2);min-block-size:1.5em}
.gl-panel{grid-area:panel;display:grid;gap:var(--s-3);align-content:start;padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--primary-soft)}
.gl-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3)}
.gl-row .btn{min-block-size:44px}
.gl-row .btn[disabled]{opacity:.55;cursor:default}
.gl-cur{margin:0;font-size:var(--fs-14);color:var(--ink-2);min-block-size:1.5em}
.gl-wrap{grid-area:wrap;position:relative;display:grid;justify-items:center;align-self:center;min-inline-size:0}
.gl-wrap[hidden]{display:none}
.gl-stage{--gl-sea:var(--primary-soft);--gl-land:var(--primary-ink);--gl-line:var(--border);--gl-pin:var(--gold);--gl-ring:var(--white);--gl-glow:#6E9BFF;--gl-night:#0B1B3A;
  position:relative;inline-size:100%;max-inline-size:420px;aspect-ratio:1;direction:ltr;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.gl-stage.is-drag{cursor:grabbing}
.gl-stage.is-pin{cursor:pointer}
.gl-stage:focus-visible{outline:3px solid var(--primary-ink);outline-offset:4px;border-radius:50%}
.gl-wrap{--gl-tip:var(--white);--gl-tip-ink:var(--ink);--gl-tip-line:var(--border);--gl-tip-soft:var(--primary-soft)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .gl-stage{--gl-sea:#16233F;--gl-land:#8FB0FF;--gl-line:#2A3B5E;--gl-ring:#0E1626;--gl-glow:#5E86E8;--gl-night:#050B18}
  :root:not([data-theme="light"]) .gl-wrap{--gl-tip:#16233F;--gl-tip-ink:#EAF0FF;--gl-tip-line:#2A3B5E;--gl-tip-soft:#1F3157}
  :root:not([data-theme="light"]) .gl-panel{background:#16233F}}
:root[data-theme="dark"] .gl-stage{--gl-sea:#16233F;--gl-land:#8FB0FF;--gl-line:#2A3B5E;--gl-ring:#0E1626;--gl-glow:#5E86E8;--gl-night:#050B18}
:root[data-theme="dark"] .gl-wrap{--gl-tip:#16233F;--gl-tip-ink:#EAF0FF;--gl-tip-line:#2A3B5E;--gl-tip-soft:#1F3157}
:root[data-theme="dark"] .gl-panel{background:#16233F}
.gl-canvas{display:block;inline-size:100%;block-size:100%}
.gl-pins{position:absolute;inset:0;pointer-events:none}
.gl-pin{position:absolute;inset-block-start:0;inset-inline-start:0;inline-size:44px;block-size:44px;padding:0;border:0;background:none;display:block;cursor:pointer;pointer-events:auto;border-radius:50%;clip-path:circle(14px at 50% 50%);-webkit-tap-highlight-color:transparent}
.gl-pin[hidden]{display:none}
.gl-pin:focus-visible{outline:3px solid var(--primary-ink);outline-offset:-4px;clip-path:none}
.gl-pin.is-on{z-index:2}
/* the card: a floating message with a pointer, placed by globe.js */
.gl-tippos{position:absolute;inset-block-start:0;inset-inline-start:0;z-index:5;direction:ltr;pointer-events:none}
.gl-tippos[hidden]{display:none}
.gl-tip{position:relative;pointer-events:auto;box-sizing:border-box;padding:var(--s-3) var(--s-4) var(--s-4);padding-inline-end:52px;border:1px solid var(--gl-tip-line);border-radius:var(--r-md);background:var(--gl-tip);color:var(--gl-tip-ink);box-shadow:var(--shadow-3);display:grid;gap:var(--s-2);text-align:start;animation:gl-in .14s ease-out}
.gl-tip:focus-visible{outline:3px solid var(--primary-ink);outline-offset:2px}
.gl-tip-h{margin:0;font-size:var(--fs-16);font-weight:var(--fw-bold,700);line-height:1.3;unicode-bidi:plaintext}
.gl-tip-n{margin:0;font-size:var(--fs-14);color:var(--ink-2);unicode-bidi:plaintext}
.gl-tip-l{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2)}
.gl-tip-l[hidden]{display:none}
.gl-tip-l li{display:grid;gap:2px;padding-block-start:var(--s-2);border-block-start:1px solid var(--gl-tip-line);justify-items:start}
.gl-t{font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:1.3;overflow-wrap:anywhere}
.gl-w{font-size:var(--fs-13);color:var(--ink-2)}
.gl-b{font-size:var(--fs-13);font-weight:var(--fw-semibold);padding:1px 8px;border-radius:var(--r-pill);background:var(--gold-soft);color:var(--gold-ink);border:1px solid var(--gold-line)}
.gl-x{position:absolute;inset-block-start:2px;inset-inline-end:2px;inline-size:44px;block-size:44px;padding:0;border:0;border-radius:50%;background:none;color:inherit;font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center}
.gl-x:hover{background:var(--gl-tip-soft)}
.gl-x:focus-visible{outline:3px solid var(--primary-ink);outline-offset:-3px}
.gl-go{justify-self:start;min-block-size:44px}
.gl-arrow{position:absolute;inline-size:14px;block-size:14px;margin-inline-start:-7px;inset-inline-start:var(--ax,50%);background:var(--gl-tip);border:1px solid var(--gl-tip-line);border-block-start:0;border-inline-start:0;transform:rotate(45deg);pointer-events:none;display:none}
.gl-tippos[data-side="top"] .gl-arrow{display:block;inset-block-end:-7px}
.gl-tippos[data-side="bottom"] .gl-arrow{display:block;inset-block-start:-7px;transform:rotate(225deg)}
@keyframes gl-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.gl-pause{min-block-size:44px;min-inline-size:44px;margin-block-start:var(--s-2)}
.gl-pause[aria-pressed="true"]{background:var(--primary-soft);border-color:var(--primary-ink)}
.gl-hint{margin:var(--s-1,4px) 0 0;font-size:var(--fs-13);color:var(--ink-2);text-align:center;max-inline-size:420px}
.gl-hint[hidden]{display:none}
@media (hover:none){.gl-hint{display:none}}
.gl-sr{position:absolute;inline-size:1px;block-size:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (prefers-reduced-motion:reduce){.gl-tip{animation:none}}
/* The card is hidden until the records are read (global.js), and it sits above the finder: keep its room, invisible, so the finder does not jump
   down when the card appears (CLS, task Q6). Heights are the card's own on phones (the stage scales with the width) and tablets, a little under it on
   wide screens. global.js adds .gl-off when there is nothing to show, which gives the room back. */
@media (max-width:820px){html:not(.gl-off) #globe[hidden]{display:block;visibility:hidden;min-block-size:min(calc(100vw + 417px),935px)}}
@media (min-width:821px){html:not(.gl-off) #globe[hidden]{display:block;visibility:hidden;min-block-size:660px}}
