/* Global Intelligence (/intelligence): the approved dark instrument page. Everything is scoped to main.gi; the
   site header and footer come from the shared shell and are not styled here. The shared theme sets one family on
   every text element, so a family this page sets carries !important and is applied to the children as well. */
html[data-page] body main.gi{position:relative;isolation:isolate;display:block;background:#0B181A;color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
html[data-page][lang] body main.gi{--f-ar:var(--st-font-ar,"IBM Plex Sans Arabic","IBM Plex Sans",Tahoma,sans-serif);--f-sans:var(--st-font,"IBM Plex Sans","IBM Plex Sans Arabic",system-ui,sans-serif)}
/* Chinese and Hindi use the site's own text faces for the labels the design writes in mono capitals in Latin script */
html[data-page]:is([lang="zh-CN"],[lang="hi"]) body main.gi{--f-ar:var(--st-font,"IBM Plex Sans",system-ui,sans-serif)}
html[data-page] body main.gi *{box-sizing:border-box}
html[data-page] body main.gi .gi-bgfx{position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(1200px 700px at 50% 30%,rgba(46,138,166,.10),transparent 60%),radial-gradient(800px 500px at 85% 0%,rgba(201,149,47,.06),transparent 60%),linear-gradient(180deg,#0B181A 0%,#071113 100%)}
html[data-page] body main.gi .gi-bgfx::after{content:"";position:absolute;inset:0;opacity:.35;
  background-image:linear-gradient(rgba(150,205,214,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(150,205,214,.13) 1px,transparent 1px);
  background-size:48px 48px;mask-image:radial-gradient(ellipse at 50% 35%,#000 0%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 50% 35%,#000 0%,transparent 70%)}
html[data-page] body main.gi button{font:inherit;color:inherit}
html[data-page] body main.gi :is(.num,.mono),html[data-page] body main.gi :is(.num,.mono) *{font-family:var(--f-mono)!important;font-variant-numeric:tabular-nums}
html[data-page] body main.gi :is(a,button,canvas,[tabindex]):focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}

/* page title row (the preview's top bar without its own brand and language switch) */
html[data-page] body main.gi .gi-top{position:relative;z-index:1;border-bottom:1px solid var(--line);background:rgba(7,17,19,.6)}
html[data-page] body main.gi .gi-top .in{max-width:1680px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:10px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-height:50px}
html[data-page] body main.gi .gi-top h1{margin:0!important;font-size:17px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:.01em!important;color:var(--ink);text-wrap:balance}
html[data-page]:is([lang="ar"],[lang="fa"]) body main.gi .gi-top h1{letter-spacing:0!important}
html[data-page] body main.gi .gi-top .sp{flex:1}
html[data-page] body main.gi .rail{position:relative;z-index:1;max-width:1680px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:8px 0;min-height:26px;
  display:flex;flex-wrap:wrap;gap:6px 18px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
html[data-page] body main.gi .rail,html[data-page] body main.gi .rail *{font-family:var(--f-mono)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .rail,html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .rail *{font-family:var(--f-ar)!important;letter-spacing:0;font-size:12px;text-transform:none}
html[data-page] body main.gi .rail b{color:var(--ink-2);font-weight:500}
/* The rail's figures arrive after first paint: it stays one line (scrolling sideways where it is too long), so
   their arrival never changes its height. */
html[data-page] body main.gi .rail{flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;scrollbar-width:none}
html[data-page] body main.gi .rail::-webkit-scrollbar{display:none}
html[data-page] body main.gi .gi-top [data-date="asof"]{display:inline-block;min-width:10ch}
@media (max-width:760px){html[data-page] body main.gi .gi-top .sp{display:none}html[data-page] body main.gi .gi-top .in{row-gap:6px}html[data-page] body main.gi .gi-top .asof{flex-basis:auto;margin-inline-end:auto}html[data-page] body main.gi .gi-top h1{flex-basis:100%}
  /* the colour-scale key holds figures that arrive later: it keeps a row of its own so the other keys never re-wrap */
  html[data-page] body main.gi .mlegend>.key:first-child{flex-basis:100%}}

/* section headings: the instrument style of the design, over the site's h2 sizing */
html[data-page][lang] body main.gi .hh h2{font-size:10.5px!important;font-weight:600!important;line-height:1.5!important;letter-spacing:.14em!important;margin:0!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hh h2{font-size:13px!important;letter-spacing:0!important}

/* room for every drawing before its figures arrive (no layout shift when they do) */
html[data-page] body main.gi .gbox{flex:none}
html[data-page] body main.gi .gb130{min-width:130px;min-height:130px}
html[data-page] body main.gi .gb118{min-width:118px;min-height:118px}
html[data-page] body main.gi .gb140{min-width:140px;min-height:140px}
html[data-page] body main.gi .gb230{min-height:230px}
html[data-page] body main.gi #g-fresh{aspect-ratio:460/170}
html[data-page] body main.gi #g-spec{aspect-ratio:480/170}
html[data-page] body main.gi #n-fresh{min-height:3em}
html[data-page] body main.gi #l-rank{min-height:150px}

/* notes under the instruments */
html[data-page] body main.gi .gi-notes{position:relative;z-index:1;padding-block:4px 10px;font-size:12px;color:var(--muted);display:grid;gap:4px}
html[data-page] body main.gi .gi-notes b{color:var(--ink-2);font-weight:500}
html[data-page] body main.gi .gi-error{color:#F3D27A}

html[data-page] body main.gi{color-scheme:dark;
  --bg:#0B181A; --bg-deep:#071113; --ink:#ECE7D8; --ink-2:#B4C1BF; --muted:#7F9396;
  --line:rgba(150,205,214,.13); --line-2:rgba(150,205,214,.26);
  --glass:rgba(17,39,43,.58); --glass-hi:rgba(26,54,59,.62);
  --teal:#4BB8D0; --teal-2:#2E8AA6; --blue:#5B8FD6; --ice:#9DBFD8;
  --gold:#F3D27A; --gold-deep:#C9952F; --gold-soft:rgba(243,210,122,.14);
  --gold-metal:linear-gradient(135deg,#FFF6D0 0%,#F3D27A 22%,#C9952F 46%,#F8DE8A 63%,#B07A1E 82%,#E7B95A 100%);
  --gold-action:linear-gradient(180deg,#F6DA85 0%,#E2B04A 55%,#C9952F 100%);
  --ink-on-gold:#1D1505;
  --f-sans:"IBM Plex Sans","IBM Plex Sans Arabic",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-ar:"IBM Plex Sans Arabic","IBM Plex Sans",system-ui,-apple-system,Tahoma,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --r:10px;}
html[data-page] body main.gi .num{direction:ltr;unicode-bidi:isolate}
html[data-page] body main.gi .asof{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:4px 10px;white-space:nowrap}
html[data-page] body main.gi .asof i{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
html[data-page] body main.gi .stage{position:relative;height:clamp(540px,calc(100vh - 210px),820px);border-radius:var(--r);overflow:hidden;border:1px solid var(--line);
  background:radial-gradient(circle at 50% 48%,rgba(46,138,166,.16) 0%,rgba(11,24,26,0) 55%),rgba(5,13,15,.55)}
html[data-page] body main.gi .mlegend{display:none;flex-wrap:wrap;gap:6px 14px;font-size:11.5px;color:var(--ink-2);padding-inline:4px}
html[data-page] body main.gi .mlegend .ramp{width:70px}
html[data-page] body main.gi .stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab}
html[data-page] body main.gi .stage canvas:active{cursor:grabbing}
html[data-page] body main.gi .corner{position:absolute;width:18px;height:18px;border-color:var(--gold);border-style:solid;opacity:.7;pointer-events:none}
html[data-page] body main.gi .c1{top:10px;inset-inline-start:10px;border-width:1px 0 0 1px}
html[data-page] body main.gi .c2{top:10px;inset-inline-end:10px;border-width:1px 1px 0 0}
html[data-page] body main.gi .c3{bottom:10px;inset-inline-start:10px;border-width:0 0 1px 1px}
html[data-page] body main.gi .c4{bottom:10px;inset-inline-end:10px;border-width:0 1px 1px 0}
html[data-page][dir="rtl"] body main.gi .c1{border-width:1px 1px 0 0}
html[data-page][dir="rtl"] body main.gi .c2{border-width:1px 0 0 1px}
html[data-page][dir="rtl"] body main.gi .c3{border-width:0 1px 1px 0}
html[data-page][dir="rtl"] body main.gi .c4{border-width:0 0 1px 1px}
html[data-page] body main.gi .hud{position:absolute;pointer-events:none;font-family:var(--f-mono)!important;font-size:10.5px;letter-spacing:.08em;color:var(--ink-2);text-transform:uppercase}
html[data-page] body main.gi .hud *{font-family:var(--f-mono)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hud{font-family:var(--f-ar)!important;letter-spacing:0;font-size:12px;text-transform:none}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hud *{font-family:var(--f-ar)!important}
html[data-page] body main.gi .hud.tl{top:18px;inset-inline-start:22px;display:grid;gap:3px;max-width:min(60%,420px)}
html[data-page] body main.gi .hud .ttl{color:var(--gold);font-weight:600;letter-spacing:.14em}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hud .ttl{letter-spacing:0}
html[data-page] body main.gi .hud .view{color:var(--ink)}
html[data-page] body main.gi .hud.br{bottom:16px;inset-inline-end:22px;display:flex;flex-direction:column;align-items:flex-end;gap:2px;color:var(--muted)}
html[data-page] body main.gi .hud.bl{bottom:16px;inset-inline-start:22px;display:grid;gap:6px;text-transform:none;letter-spacing:.02em;font-size:11px;color:var(--ink-2);font-family:var(--f-sans)!important}
html[data-page] body main.gi .hud.bl *{font-family:var(--f-sans)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hud.bl{font-family:var(--f-ar)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hud.bl *{font-family:var(--f-ar)!important}
html[data-page] body main.gi .ramp{width:140px;height:5px;border-radius:3px;background:linear-gradient(90deg,#1B4756,#2F93AE 35%,#9DBFD8 62%,#CFC6BA 74%,#E7B95A 86%,#F8DE8A)}
html[data-page][dir="rtl"] body main.gi .ramp{transform:scaleX(-1)}
html[data-page] body main.gi .rampl{display:flex;justify-content:space-between;width:140px;font-family:var(--f-mono)!important;font-size:10px;color:var(--muted)}
html[data-page] body main.gi .rampl *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .key{display:flex;align-items:center;gap:7px}
html[data-page] body main.gi .key i{width:14px;height:2px;border-radius:1px;background:linear-gradient(90deg,var(--teal),var(--gold))}
html[data-page] body main.gi .key i.dot{width:6px;height:6px;border-radius:50%;background:rgba(70,140,165,.8)}
html[data-page] body main.gi .ctrls{position:absolute;top:14px;inset-inline-end:16px;display:flex;gap:6px;align-items:center;z-index:3}
html[data-page] body main.gi .ib{min-width:34px;height:34px;border-radius:8px;border:1px solid var(--line-2);background:rgba(10,24,27,.7);color:var(--ink);cursor:pointer;font-size:16px;line-height:1;display:grid;place-items:center}
html[data-page] body main.gi .ib:hover{border-color:var(--teal)}
html[data-page] body main.gi .btn-gold{border:0;border-radius:8px;min-height:34px;padding:0 14px;background:var(--gold-action);color:var(--ink-on-gold);font-weight:600;font-size:12.5px;cursor:pointer;box-shadow:0 0 0 1px rgba(255,246,208,.25) inset,0 6px 18px rgba(201,149,47,.18);white-space:nowrap}
html[data-page] body main.gi .btn-gold:hover{filter:brightness(1.06)}
html[data-page] body main.gi .btn-ghost{border:1px solid var(--line-2);border-radius:8px;min-height:32px;padding:0 12px;background:rgba(10,24,27,.5);color:var(--ink);font-size:12.5px;cursor:pointer}
html[data-page] body main.gi .btn-ghost:hover{border-color:var(--teal)}
html[data-page] body main.gi .loader{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;transition:opacity .6s}
html[data-page] body main.gi .loader .ring{width:min(56%,420px);aspect-ratio:1;border-radius:50%;border:1px solid var(--line-2);box-shadow:inset 0 0 60px rgba(46,138,166,.18);display:grid;place-items:center}
html[data-page] body main.gi .loader span{font-family:var(--f-mono)!important;font-size:11px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
html[data-page] body main.gi .loader span *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}
html[data-page] body main.gi .lab{position:absolute;left:0;top:0;opacity:0;font-family:var(--f-mono)!important;font-size:10px;color:var(--ink);white-space:nowrap;padding:1px 5px;border-radius:3px;background:rgba(7,17,19,.62);border:1px solid var(--line);will-change:transform;direction:ltr}
html[data-page] body main.gi .lab *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .lab b{color:var(--gold);font-weight:600}
html[data-page] body main.gi .lab.sel{font-size:11.5px;border-color:rgba(243,210,122,.55);background:rgba(20,16,6,.7);padding:3px 8px}
html[data-page] body main.gi .lab.gleif{color:var(--teal);border-color:rgba(75,184,208,.4)}
html[data-page] body main.gi .tip{position:absolute;z-index:4;pointer-events:none;min-width:190px;max-width:260px;background:rgba(9,22,25,.92);border:1px solid var(--line-2);border-radius:8px;padding:9px 11px;font-size:12px;box-shadow:0 10px 30px rgba(0,0,0,.35);opacity:0;transition:opacity .15s}
html[data-page] body main.gi .tip.on{opacity:1}
html[data-page] body main.gi .tip .tn{font-weight:600;font-size:13px;margin-bottom:4px}
html[data-page] body main.gi .tip .tr{display:flex;justify-content:space-between;gap:12px;color:var(--ink-2)}
html[data-page] body main.gi .tip .tr .num{color:var(--ink)}
html[data-page] body main.gi .hint{font-size:11.5px;color:var(--muted)}
html[data-page] body main.gi .lab.hub{color:#FFF8E6;border-color:rgba(235,181,82,.5);background:rgba(16,14,8,.66)}
html[data-page] body main.gi .lab.hub b{color:#EBB552}
html[data-page] body main.gi .key i.hubk{width:14px;height:2px;background:linear-gradient(90deg,#F4E6C4,#EBB552 30%,var(--teal))}
html[data-page] body main.gi .key i.gl2{background:rgba(75,184,208,.45)}
html[data-page] body main.gi .key i.pt{width:5px;height:5px;border-radius:50%;background:#B9D8E8;box-shadow:0 0 0 2px rgba(185,216,232,.14)}
html[data-page] body main.gi .key i.hn{width:7px;height:7px;border-radius:50%;background:#FFF8E6;box-shadow:0 0 0 2px rgba(235,181,82,.35)}
html[data-page] body main.gi .gi-flat .key.fx{display:none}
html[data-page] body main.gi{--g1:#EBB552;--g2:#C8892F;--eu:#9DBFD8;--am:#4BB8D0;--ap:#5B8FD6;--me:#D6CDB8}
html[data-page] body main.gi .wrap{position:relative;z-index:1;max-width:1680px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:14px 30px;display:grid;grid-template-columns:minmax(0,1fr);gap:26px}
html[data-page] body main.gi .console{position:relative;display:grid;grid-template-columns:300px minmax(0,1fr) 316px;gap:26px;align-items:start;min-width:0}
html[data-page] body main.gi .col{display:flex;flex-direction:column;gap:14px;min-width:0;position:relative;z-index:1}
html[data-page] body main.gi .core{min-width:0;display:grid;gap:10px;align-content:start;position:relative;z-index:1}
html[data-page] body main.gi .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html[data-page] body main.gi .hp{position:relative;background:linear-gradient(180deg,rgba(15,35,39,.58),rgba(6,16,18,.62));border:1px solid var(--line);border-radius:3px;padding:11px 12px 12px;min-width:0;transition:border-color .4s ease}
html[data-page] body main.gi .hp::before,
html[data-page] body main.gi .hp::after{content:"";position:absolute;width:9px;height:9px;border-color:var(--g1);border-style:solid;opacity:.7;pointer-events:none}
html[data-page] body main.gi .hp::before{top:-1px;inset-inline-start:-1px;border-width:1px 0 0 1px}
html[data-page] body main.gi .hp::after{bottom:-1px;inset-inline-end:-1px;border-width:0 1px 1px 0}
html[data-page][dir="rtl"] body main.gi .hp::before{border-width:1px 1px 0 0}
html[data-page][dir="rtl"] body main.gi .hp::after{border-width:0 0 1px 1px}
html[data-page] body main.gi .hp:hover{border-color:var(--line-2)}
html[data-page] body main.gi .hh{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;min-width:0}
html[data-page] body main.gi .hh h2{margin:0;font-family:var(--f-mono)!important;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);display:flex;gap:8px;align-items:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-page] body main.gi .hh h2 *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .hh h2::before{content:"";width:5px;height:5px;background:var(--g1);transform:rotate(45deg);flex:none}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hh h2{font-family:var(--f-ar)!important;letter-spacing:0;font-size:13px;text-transform:none}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .hh h2 *{font-family:var(--f-ar)!important}
html[data-page] body main.gi .pill{font-family:var(--f-mono)!important;font-size:9.5px;letter-spacing:.08em;color:var(--muted);border:1px solid var(--line-2);border-radius:999px;padding:1px 8px;white-space:nowrap;text-transform:uppercase;flex:none}
html[data-page] body main.gi .pill *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .pill.g{color:var(--g1);border-color:rgba(235,181,82,.42)}
html[data-page] body main.gi .pill.d{border-style:dashed}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .pill{font-family:var(--f-ar)!important;letter-spacing:0;font-size:10.5px;text-transform:none}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .pill *{font-family:var(--f-ar)!important}
html[data-page] body main.gi .cap{font-family:var(--f-mono)!important;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
html[data-page] body main.gi .cap *{font-family:var(--f-mono)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .cap{font-family:var(--f-ar)!important;letter-spacing:0;font-size:11px;text-transform:none}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .cap *{font-family:var(--f-ar)!important}
html[data-page] body main.gi .big{font-family:var(--f-mono)!important;font-size:25px;font-weight:600;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}
html[data-page] body main.gi .big *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .big.g{color:var(--g1)}
html[data-page] body main.gi .v{font-family:var(--f-mono)!important;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
html[data-page] body main.gi .v *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .muted{color:var(--muted)}
html[data-page] body main.gi .note{font-size:11px;color:var(--muted);margin:8px 0 0;line-height:1.4}
html[data-page] body main.gi .empty{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-2);border:1px dashed var(--line-2);border-radius:999px;padding:2px 9px;width:max-content;max-width:100%}
html[data-page] body main.gi .odo{display:inline-flex;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;line-height:1.1;height:1.1em;overflow:hidden;vertical-align:bottom}
html[data-page] body main.gi .odo .d{display:inline-block;height:1.1em;overflow:hidden}
html[data-page] body main.gi .odo .s{display:block;transition:transform .85s cubic-bezier(.2,.75,.2,1)}
html[data-page] body main.gi .odo .s span{display:block;height:1.1em;text-align:center}
html[data-page] body main.gi .odo.init .s{transition:none}
html[data-page] body main.gi svg.g{display:block;overflow:visible}
html[data-page] body main.gi .arc{fill:none;transition:stroke-dashoffset .7s cubic-bezier(.3,.7,.2,1),stroke-dasharray .7s cubic-bezier(.3,.7,.2,1),stroke .5s ease,opacity .5s ease}
html[data-page] body main.gi .trk{fill:none;stroke:rgba(150,205,214,.1)}
html[data-page] body main.gi .gt{font-family:var(--f-mono)!important;font-variant-numeric:tabular-nums}
html[data-page] body main.gi .gt *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .leg{display:grid;gap:4px;font-size:11.5px;color:var(--ink-2);min-width:0}
html[data-page] body main.gi .leg .r{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:7px;align-items:center}
html[data-page] body main.gi .leg .r>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-page] body main.gi .leg i{width:8px;height:8px;border-radius:2px;display:block}
html[data-page] body main.gi .leg i.ring{border-radius:50%;background:transparent!important;border:2px solid currentColor}
html[data-page] body main.gi .leg .v{color:var(--ink);font-size:11.5px}
html[data-page] body main.gi .cov{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;align-items:center}
html[data-page] body main.gi .leg2{grid-template-columns:1fr 1fr;column-gap:14px;margin-top:8px;font-size:11px}
html[data-page] body main.gi .leg2 .cap{grid-column:1/-1}
html[data-page] body main.gi .leg.wrap .r>span:nth-child(2){white-space:normal;line-height:1.25}
html[data-page] body main.gi .leg.wrap .r{align-items:start}
html[data-page] body main.gi .jc{display:grid;grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:center}
html[data-page] body main.gi .jc .stats{grid-template-columns:1fr 1fr;gap:8px 10px}
html[data-page] body main.gi .jc .stat b{font-size:17px}
html[data-page] body main.gi .jc .stat span{font-size:10.5px}
html[data-page] body main.gi .stat{display:grid;gap:1px}
html[data-page] body main.gi .stat b{font-family:var(--f-mono)!important;font-size:19px;font-weight:600;color:var(--ink);line-height:1.15;direction:ltr;unicode-bidi:isolate;text-align:start}
html[data-page] body main.gi .stat b *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .stat b.g{color:var(--g1)}
html[data-page] body main.gi .stat span{font-size:11px;color:var(--ink-2);line-height:1.3}
html[data-page] body main.gi .stats{display:grid;gap:7px}
html[data-page] body main.gi .ig4{display:grid;gap:5px}
html[data-page] body main.gi .igx{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:9px;align-items:center;min-width:0}
html[data-page] body main.gi .igx .t{font-size:11px;line-height:1.25;color:var(--ink)}
html[data-page] body main.gi .igx .s{font-size:9.5px;color:var(--muted);font-family:var(--f-mono)!important;letter-spacing:.04em;white-space:nowrap}
html[data-page] body main.gi .igx .s *{font-family:var(--f-mono)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .igx .s{font-family:var(--f-ar)!important;letter-spacing:0;font-size:10.5px}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .igx .s *{font-family:var(--f-ar)!important}
html[data-page] body main.gi #p-int .note{font-size:10.5px;margin-top:7px}
html[data-page] body main.gi .fx-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-bottom:8px}
html[data-page] body main.gi .iso{font-family:var(--f-mono)!important;font-size:22px;font-weight:600;line-height:1;color:var(--g1);border:1px solid rgba(235,181,82,.4);border-radius:4px;padding:7px 8px;min-width:46px;text-align:center}
html[data-page] body main.gi .iso *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .iso.hub{font-size:12px;padding:9px 7px;letter-spacing:.06em}
html[data-page] body main.gi .fname{font-size:16px;font-weight:600;line-height:1.2}
html[data-page] body main.gi .fsub{font-size:11.5px;color:var(--ink-2)}
html[data-page] body main.gi .fgrid{display:grid;grid-template-columns:118px minmax(0,1fr);gap:12px;align-items:center;margin:4px 0 8px}
html[data-page] body main.gi .fgrid .big{font-size:21px}
html[data-page] body main.gi #f-leg{margin-bottom:4px}
html[data-page] body main.gi .rows{display:grid}
html[data-page] body main.gi .rw{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:6px 0;border-top:1px solid var(--line);font-size:11.5px}
html[data-page] body main.gi .rw .k{color:var(--ink-2)}
html[data-page] body main.gi .rw .val{font-family:var(--f-mono)!important;color:var(--ink);font-size:12px;text-align:end}
html[data-page] body main.gi .rw .val *{font-family:var(--f-mono)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .rw .val.txt{font-family:var(--f-ar)!important}
html[data-page]:is([lang="ar"],[lang="fa"],[lang="zh-CN"],[lang="hi"]) body main.gi .rw .val.txt *{font-family:var(--f-ar)!important}
html[data-page] body main.gi .fade{animation:gi-fadein .5s ease both}
@keyframes gi-fadein{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
html[data-page] body main.gi .sb{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;align-items:center}
html[data-page] body main.gi .seg{cursor:pointer;transition:transform .5s cubic-bezier(.3,.7,.2,1),opacity .4s ease,stroke .3s ease;transform-box:view-box;transform-origin:50% 50%;stroke:rgba(5,13,15,.9);stroke-width:.6}
html[data-page] body main.gi .seg.dim{opacity:.32}
html[data-page] body main.gi .seg.on{transform:scale(1.07);stroke:var(--g1);stroke-width:1.2}
html[data-page] body main.gi .seg.hl{opacity:1;stroke:#ECE7D8;stroke-width:1}
html[data-page] body main.gi #wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}
html[data-page] body main.gi #wires .w{fill:none;stroke:rgba(150,205,214,.2);stroke-width:1}
html[data-page] body main.gi #wires .n{fill:#0B181A;stroke:rgba(150,205,214,.45);stroke-width:1}
html[data-page] body main.gi #wires .nd{fill:var(--g1);opacity:.8}
@keyframes gi-wire{0%{stroke-dashoffset:3}42%{stroke-dashoffset:-100}100%{stroke-dashoffset:-100}}
@keyframes gi-wireping{0%{stroke-dashoffset:3}100%{stroke-dashoffset:-100}}
html[data-page] body main.gi .xp{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:0;padding:0;overflow:hidden}
html[data-page] body main.gi .xp .hh{padding:11px 12px 0;margin:0}
html[data-page] body main.gi .xmap{position:relative;min-width:0;border-inline-end:1px solid var(--line)}
html[data-page] body main.gi .xbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:11px 12px 6px}
html[data-page] body main.gi .xbar .grow{flex:1}
html[data-page] body main.gi .xleg{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11px;color:var(--ink-2);align-items:center}
html[data-page] body main.gi .xleg i{display:inline-block;vertical-align:-1px;margin-inline-end:6px}
html[data-page] body main.gi .xleg .sz{width:16px;height:9px;background:radial-gradient(circle at 25% 50%,var(--am) 0 2px,transparent 2.5px),radial-gradient(circle at 72% 50%,var(--am) 0 4px,transparent 4.5px)}
html[data-page] body main.gi .xleg .hb{width:8px;height:8px;border-radius:50%;background:#FFF8E6;box-shadow:0 0 0 2px rgba(235,181,82,.35)}
html[data-page] body main.gi .xleg .lk{width:14px;height:2px;background:linear-gradient(90deg,var(--g1),var(--am))}
html[data-page] body main.gi #xcv{display:block;width:100%;height:440px;cursor:crosshair;touch-action:pan-y}
html[data-page] body main.gi .xfoot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;padding:4px 12px 10px;font-size:11px;color:var(--muted)}
html[data-page] body main.gi .btn{border:1px solid var(--line-2);border-radius:999px;min-height:30px;padding:0 13px;background:rgba(10,24,27,.6);color:var(--ink);font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:border-color .3s,background .3s}
html[data-page] body main.gi .btn:hover{border-color:var(--teal)}
html[data-page] body main.gi .btn[aria-pressed="true"]{border-color:rgba(235,181,82,.7);background:rgba(235,181,82,.12);color:var(--g1)}
html[data-page] body main.gi .btn i{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.8}
html[data-page] body main.gi .cmp{padding:11px 12px 12px;display:grid;gap:10px;align-content:start;min-width:0}
html[data-page] body main.gi .cmpg{display:grid;grid-template-columns:1fr 1fr;gap:0;position:relative}
html[data-page] body main.gi .cmpg::after{content:"";position:absolute;left:50%;top:8px;bottom:8px;width:1px;background:linear-gradient(180deg,transparent,var(--line-2),transparent)}
html[data-page] body main.gi .cside{display:grid;gap:5px;justify-items:center;text-align:center;min-width:0;padding:0 6px}
html[data-page] body main.gi .cside .ci{font-family:var(--f-mono)!important;font-size:11px;color:var(--g1);letter-spacing:.08em}
html[data-page] body main.gi .cside .ci *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .cside .cn{font-size:12.5px;font-weight:600;line-height:1.2;min-height:2.4em;display:flex;align-items:center}
html[data-page] body main.gi .cside .cv{font-size:18px;font-weight:600;font-family:var(--f-mono)!important}
html[data-page] body main.gi .cside .cv *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .cside.b .ci{color:#CFE7F0}
html[data-page] body main.gi .crows{display:grid;gap:0}
html[data-page] body main.gi .crw{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;padding:5px 0;border-top:1px solid var(--line);font-size:11.5px;align-items:baseline}
html[data-page] body main.gi .crw .a{text-align:end;font-family:var(--f-mono)!important;color:var(--ink)}
html[data-page] body main.gi .crw .a *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .crw .b{text-align:start;font-family:var(--f-mono)!important;color:var(--ink)}
html[data-page] body main.gi .crw .b *{font-family:var(--f-mono)!important}
html[data-page] body main.gi .crw .k{color:var(--muted);font-size:10.5px;text-align:center}
html[data-page] body main.gi .crw .a.txt,
html[data-page] body main.gi .crw .b.txt{font-family:var(--f-sans)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html[data-page] body main.gi .crw .a.txt *,
html[data-page] body main.gi .crw .b.txt *{font-family:var(--f-sans)!important}
html[data-page] body main.gi .mbar{display:grid;grid-template-columns:1fr 1fr;gap:2px;height:8px}
html[data-page] body main.gi .mbar span{display:block;height:100%;border-radius:2px;transition:width .7s cubic-bezier(.3,.7,.2,1)}
html[data-page] body main.gi .mbar .l{justify-self:end;background:linear-gradient(270deg,var(--g1),var(--g2))}
html[data-page] body main.gi .mbar .r{justify-self:start;background:linear-gradient(90deg,#BFE3EE,var(--am))}
html[data-page] body main.gi .cmp .hint{font-size:11.5px;color:var(--muted);line-height:1.4}
html[data-page] body main.gi .inst{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr) minmax(0,1.25fr);gap:14px}
html[data-page] body main.gi .rad{display:grid;grid-template-columns:230px minmax(0,1fr);gap:8px;align-items:center}
html[data-page] body main.gi .bar{cursor:pointer;transition:stroke .4s ease,opacity .4s ease,stroke-width .3s ease}
html[data-page] body main.gi .bar.dim{opacity:.35}
html[data-page] body main.gi .bar.on{stroke:var(--g1)!important;opacity:1}
html[data-page] body main.gi .bar.hl{opacity:1;stroke-width:5}
html[data-page] body main.gi .fresh svg,
html[data-page] body main.gi .spec svg{width:100%;height:auto;display:block}
html[data-page] body main.gi .dot{cursor:pointer;transition:opacity .4s ease,stroke .3s ease}
html[data-page] body main.gi .dot.dim{opacity:.35}
html[data-page] body main.gi .dot.on{stroke:var(--g1);stroke-width:2}
html[data-page] body main.gi .dot.hl{stroke:#ECE7D8;stroke-width:1.5}
html[data-page] body main.gi .gw{position:relative;flex:none}
html[data-page] body main.gi .gw>svg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}
html[data-page] body main.gi .gw>svg.lay{will-change:transform;pointer-events:none}
/* the two ring instruments (intelligence.js Rings): light and glow on layers of their own, never over the centre figures */
html[data-page] body main.gi .gw>.rl{position:absolute;left:0;top:0;width:100%;height:100%;will-change:transform,opacity;pointer-events:none}
html[data-page] body main.gi .gw>.rl>svg{display:block;width:100%;height:100%;overflow:visible}
html[data-page] body main.gi .arc.hx{opacity:.4}
html[data-page] body main.gi .seg.hx:not(.dim){opacity:.55}
html[data-page] body main.gi .seg.reg.rh{fill-opacity:.8;stroke:#ECE7D8;stroke-width:1}
html[data-page] body main.gi .snapdot{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border:1px solid var(--g1);border-radius:50%;animation:gi-snap 4.5s ease-out infinite;will-change:transform,opacity;pointer-events:none}
html[data-page] body main.gi .scanw{position:absolute;overflow:hidden;pointer-events:none}
html[data-page] body main.gi .scanw i{position:absolute;top:0;bottom:0;left:0;width:14%;background:linear-gradient(90deg,transparent,rgba(191,227,238,.15),transparent);animation:gi-scan 11s linear infinite;will-change:transform}
html[data-page] body main.gi #g-fresh,
html[data-page] body main.gi #g-spec{position:relative}
html[data-page] body main.gi #wdots{position:absolute;inset:0;pointer-events:none;z-index:2}
html[data-page] body main.gi .wd{position:absolute;left:0;top:0;width:5px;height:5px;border-radius:50%;background:#C9EAF3;box-shadow:0 0 6px rgba(191,227,238,.75);offset-rotate:0deg;offset-distance:0%;opacity:0;animation:gi-wdot 7s linear infinite;will-change:offset-distance,opacity}
html[data-page] body main.gi .wd.ping{background:var(--g1);box-shadow:0 0 8px rgba(235,181,82,.8);animation:gi-wping 1s cubic-bezier(.3,.6,.3,1) 1}
@keyframes gi-wdot{0%{offset-distance:0%;opacity:0}4%{opacity:.95}38%{opacity:.95}42%{offset-distance:100%;opacity:0}100%{offset-distance:100%;opacity:0}}
@keyframes gi-wping{0%{offset-distance:0%;opacity:1}90%{opacity:1}100%{offset-distance:100%;opacity:0}}
@keyframes gi-snap{0%{transform:scale(.6);opacity:.7}70%{transform:scale(1.9);opacity:0}100%{opacity:0}}
html[data-page] body main.gi .scan{animation:gi-scan 11s linear infinite}
@keyframes gi-scan{from{transform:translateX(-100%)}to{transform:translateX(720%)}}
/* phones (intelligence.js adds .rv): a panel enters once as it scrolls into view; opacity and transform only, its space is kept */
html[data-page] body main.gi .hp.rv{opacity:0;transform:translateY(14px);transition:opacity .42s ease,transform .45s cubic-bezier(.2,.7,.2,1),border-color .4s ease}
html[data-page] body main.gi .hp.rv.rv-in{opacity:1;transform:none}
html[data-page] body main.gi .vt{position:fixed;z-index:40;pointer-events:none;min-width:170px;max-width:250px;background:rgba(9,22,25,.94);border:1px solid var(--line-2);border-radius:6px;padding:8px 10px;font-size:11.5px;box-shadow:0 10px 30px rgba(0,0,0,.35);opacity:0;transition:opacity .15s}
html[data-page] body main.gi .vt.on{opacity:1}
html[data-page] body main.gi .vt .tn{font-weight:600;font-size:12.5px;margin-bottom:3px}
html[data-page] body main.gi .vt .tr{display:flex;justify-content:space-between;gap:12px;color:var(--ink-2)}
html[data-page] body main.gi .vt .tr .v{color:var(--ink)}
@media (max-width:1180px){
  html[data-page] body main.gi .console{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"core core" "left right"}
  html[data-page] body main.gi .core{grid-area:core}
  html[data-page] body main.gi .col.left{grid-area:left}
  html[data-page] body main.gi .col.right{grid-area:right}
  html[data-page] body main.gi #wires,
html[data-page] body main.gi #wdots{display:none}
  html[data-page] body main.gi .xp{grid-template-columns:minmax(0,1fr)}
  html[data-page] body main.gi .xmap{border-inline-end:0;border-bottom:1px solid var(--line)}
  html[data-page] body main.gi .inst{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  html[data-page] body main.gi .inst .hp:first-child{grid-column:1/-1}
}
@media (max-width:760px){
  html[data-page] body main.gi .wrap{gap:18px}
  html[data-page] body main.gi .console{display:flex;flex-direction:column;gap:14px;align-items:stretch}
  html[data-page] body main.gi .core{order:-1}
  html[data-page] body main.gi .col{flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:6px;scrollbar-width:none;overscroll-behavior-x:contain;margin-inline:-2px}
  html[data-page] body main.gi .col::-webkit-scrollbar{display:none}
  html[data-page] body main.gi .col>.hp{flex:0 0 86%;scroll-snap-align:start}
  html[data-page] body main.gi .stage{height:auto;aspect-ratio:1/1;max-height:none}
  html[data-page] body main.gi .hud.tl{top:14px;inset-inline-start:16px}
  html[data-page] body main.gi .hud.br{display:none}
  html[data-page] body main.gi .hud.bl{display:none}
  html[data-page] body main.gi .mlegend{display:flex}
  html[data-page] body main.gi .ctrls{top:10px;inset-inline-end:10px}
  html[data-page] body main.gi .ctrls .ib{min-width:36px;height:36px}
  html[data-page] body main.gi .stage .hint{display:none}
  html[data-page] body main.gi .cov,
html[data-page] body main.gi .jc,
html[data-page] body main.gi .sb{grid-template-columns:132px minmax(0,1fr)}
  html[data-page] body main.gi #xcv{height:250px}
  html[data-page] body main.gi .xbar .xleg{display:none}
  html[data-page] body main.gi .inst{grid-template-columns:minmax(0,1fr)}
  html[data-page] body main.gi .rad{grid-template-columns:minmax(0,1fr)}
  html[data-page] body main.gi .rad svg{max-width:250px;margin:0 auto}
  /* the light scan and the snapshot pulse run on phones as on desktop, paused while their panel is off screen */
  html[data-page] body main.gi .hp.off :is(.scanw i,.snapdot){animation-play-state:paused}
  html[data-page] body main.gi #wdots{display:none}
}
@media (prefers-reduced-motion:reduce){
  html[data-page] body main.gi .key.kpt{display:none}
}
@media (prefers-reduced-motion:reduce){
  html[data-page] body main.gi *{animation:none!important;transition:none!important}
}
