/* The Regime Board (build/regime.py, build/regime.js). Shared by both sites: every colour but the factions' and the red of a
   fall is the site's own token, so it wears Liberty Politics' yellow on one site and the Sun gold on the other.
   Phone first: 360px wide, 12px the smallest text, 40px the smallest thing to tap, no sideways scroll.
   ONE BOARD YOU WALK (1 Nov 2026): a sticky bar on top (find, who to show, colour by faction), the level you are on (the
   whole regime as tiles, or one branch as chairs), and the timeline docked at the foot. Nothing hides and animates back. */
.rg{--rg-kill:#E5484D;--rg-unk:#E8A33D;padding:var(--s5) 0 var(--s7)}
.rg-dim{color:var(--dim)}
.rg [hidden]{display:none!important}
.rg-head{display:flex;flex-direction:column}
/* THE HEAD AS A SCOREBOARD (1 November 2026). On a phone one column in the reading order (kick, title, line, the numbers,
   Share, the latest falls); from 1100px the title and Share on the left, the numbers and the faces on the right. */
.rg-hl,.rg-hr{display:contents}
.rg-kick{order:1}.rg h1{order:2}.rg-lede{order:3;max-width:62ch}.rg-count{order:4}.rg-acts{order:5}.rg-latest{order:6}
@media(min-width:1100px){
  .rg-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:var(--s6);align-items:start}
  .rg-hl,.rg-hr{display:block;min-width:0}
  .rg-hr{padding:var(--s4);border-radius:var(--r2);background:var(--panel);border:1px solid var(--line)}
  .rg-hr .rg-count{margin-top:0}
  .rg-hr .rg-cn{background:var(--bg)}
  .rg-hr .rg-cn:hover{background:var(--raise)}
}
.rg-kick{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;color:var(--dim);letter-spacing:.02em}
.rg-live{width:8px;height:8px;border-radius:50%;background:var(--rg-kill);box-shadow:0 0 0 3px rgba(229,72,77,.22);flex:none}
.rg h1{margin-top:var(--s2);font-size:clamp(2.1rem,8.5vw,4rem)}
.rg-lede{margin-top:var(--s3);font-size:1.05rem;color:var(--dim)}
/* the three counts: also the filters (a tap lights that group on the board below) */
.rg-count{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2);margin-top:var(--s5)}
.rg-cn{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;padding:var(--s3);background:var(--panel);border:1px solid var(--line);border-radius:var(--r2);min-width:0;color:var(--ink);font:inherit;text-align:start;cursor:pointer}
.rg-cn:hover{background:var(--raise);border-color:var(--dim)}
.rg-cn:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-cn.is-on{box-shadow:inset 0 0 0 2px var(--ink)}
.rg-cn b{display:block;font:900 clamp(2rem,9vw,3.4rem)/.9 var(--display)}
.rg-cn span{display:block;margin-top:4px;font-size:.78rem;line-height:1.25;color:var(--dim);font-weight:600}
.rg-cn.is-k b{color:var(--rg-kill)}
.rg-cn.is-u b{color:var(--rg-unk)}
.rg-cn span::before{content:"";display:inline-block;width:8px;height:8px;margin-inline-end:6px;border-radius:50%;background:var(--raise);vertical-align:1px}
.rg-cn.is-k span::before{background:var(--rg-kill)}.rg-cn.is-u span::before{background:var(--rg-unk)}
.rg-nojs{margin-top:var(--s4);color:var(--dim)}
.rg-acts{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;margin-top:var(--s4)}
.rg-acts .btn{min-height:44px}
/* 31 October 2026 (audit at 1440): in the head's left column, from 1100px, the four are one row with 14px words */
.rg-acts .lpt-doors .lpt-how,.rg-acts .lpt-doors .lps-go{min-height:44px}
@media(min-width:1100px){.rg-acts{gap:6px}.rg-acts .btn,.rg-acts .lpt-doors .lpt-how,.rg-acts .lpt-doors .lps-go{font-size:.875rem}.rg-acts .btn{padding:0 13px}.rg-acts .lpt-doors .lpt-how,.rg-acts .lpt-doors .lps-go{gap:6px;padding:0 12px 0 9px}}
/* how much of the board is gone: one bar, red for taken out, amber for unknown, the rest still in their chairs */
.rg-share{grid-column:1/-1;margin-top:var(--s2)}
.rg-sb{position:relative;display:block;height:10px;border-radius:999px;background:var(--raise);overflow:hidden}
.rg-sb i{position:absolute;top:0;bottom:0;inset-inline-start:0}
.rg-sb-k{width:var(--k,0%);background:var(--rg-kill)}
.rg-sb-u{inset-inline-start:var(--k,0%)!important;width:var(--u,0%);background:var(--rg-unk)}
.rg-share-l{margin:6px 0 0;font-size:.875rem;line-height:1.35;color:var(--dim)}
.rg-share-l b{color:var(--ink);font-weight:800}
/* the latest to fall: four faces, each opening its card */
.rg-latest{margin-top:var(--s4);min-width:0}
.rg-lt-h{margin:0 0 var(--s2);font:800 .78rem/1.2 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
[lang=fa] .rg-lt-h{letter-spacing:0;text-transform:none}
.rg-lt{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2);list-style:none;margin:0;padding:0}
.rg-lt li{min-width:0}
.rg-lf{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;min-height:44px;padding:8px 4px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel);color:var(--ink);font:inherit;text-align:center;cursor:pointer}
.rg-hr .rg-lf{background:var(--bg)}
.rg-lf:hover{border-color:var(--rg-kill)}
.rg-lf-f{position:relative;display:block;width:56px;height:70px}
.rg-lf-f img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;border-radius:8px;filter:grayscale(1) contrast(1.05)}
.rg-lf-f .rg-x{width:22px;height:22px;inset-inline-end:-6px;top:-6px}
.rg-lf-f .rg-x::before,.rg-lf-f .rg-x::after{width:12px;height:2.5px}
.rg-lf-n{display:block;max-width:100%;font-weight:700;font-size:.8125rem;line-height:1.2;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rg-lf-d{display:block;font-size:.75rem;color:var(--dim);font-variant-numeric:tabular-nums}
@media(max-width:379px){.rg-lf-f{width:46px;height:58px}}

/* ---------------------------------------------------------------- the two tabs */
.rg-tabs{display:flex;gap:4px;margin-top:var(--s5);padding:4px;background:var(--sunk);border:1px solid var(--line);border-radius:999px;width:max-content;max-width:100%}
.rg-tab{min-height:44px;padding:0 20px;border:0;border-radius:999px;background:transparent;color:var(--dim);font:800 .95rem/1 var(--body);cursor:pointer;white-space:nowrap}
.rg-tab:hover{color:var(--ink)}
.rg-tab.is-on{background:var(--ink);color:var(--bg)}
.rg-tab:focus-visible{outline:2px solid var(--field);outline-offset:2px}

/* ---------------------------------------------------------------- the stage: the bar, the level, the timeline */
.rg-stage{position:relative;margin-top:var(--s3)}
.rg-stage.is-js{min-height:70vh}
.rg-bar{position:sticky;top:var(--rg-top,0px);z-index:20;display:grid;gap:8px;margin:0 calc(-1 * var(--gutter,16px));padding:8px var(--gutter,16px);background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
@media(min-width:900px){.rg-bar{margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r2);grid-template-columns:minmax(260px,1fr) auto;align-items:center;column-gap:12px}.rg-campw{grid-column:1/-1}}
.rg-findw{position:relative;min-width:0}
.rg-find{width:100%;min-width:0;min-height:44px;padding:0 14px 0 40px;border:1px solid var(--line);border-radius:999px;background:var(--sunk) no-repeat 14px 50%/16px 16px;color:var(--ink);font:500 1rem/1 var(--body);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M20 20l-4.6-4.6'/%3E%3C/svg%3E")}
[dir=rtl] .rg-find{padding:0 40px 0 14px;background-position:calc(100% - 14px) 50%}
.rg-find:focus{outline:2px solid var(--field);outline-offset:1px;border-color:transparent}
.rg-find::placeholder{color:var(--dim);opacity:1}
.rg-ql{position:absolute;inset-inline:0;top:calc(100% + 6px);z-index:30;max-height:min(420px,60vh);overflow-y:auto;margin:0;padding:6px;list-style:none;background:var(--panel);border:1px solid var(--line);border-radius:var(--r2);box-shadow:0 18px 40px rgba(0,0,0,.5)}
.rg-qo.is-at .rg-rw,.rg-qo .rg-rw:hover{background:var(--raise)}
.rg-qn{padding:12px;color:var(--dim);font-size:.9rem}
.rg-ctl2{display:flex;gap:6px;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none}
.rg-ctl2::-webkit-scrollbar{display:none}
.rg-fil{display:flex;gap:6px;align-items:center;flex:none}
.rg-f{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font:600 .82rem/1 var(--body);cursor:pointer;white-space:nowrap}
.rg-f b{font-weight:800;color:var(--dim)}
.rg-f.is-k b{color:var(--rg-kill)}.rg-f.is-u b{color:var(--rg-unk)}
.rg-f.is-on{border-color:var(--field);background:var(--field);color:var(--on-field)}
.rg-f.is-on b{color:inherit}
.rg-f:focus-visible,.rg-lens:focus-visible,.rg-ck:focus-visible{outline:2px solid var(--field);outline-offset:2px}
/* Colour by faction: a switch, and when it is on, the camps' chips and the bar of their shares */
.rg-lens{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px 0 8px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font:700 .82rem/1 var(--body);cursor:pointer;white-space:nowrap}
.rg-lens i{position:relative;flex:none;width:34px;height:20px;border-radius:999px;background:var(--raise);transition:background .15s}
.rg-lens i::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;border-radius:50%;background:var(--dim);transition:transform .15s,background .15s}
.rg-lens[aria-pressed=true]{border-color:transparent;background:linear-gradient(90deg,#A97BFF33,#2FA36B33,#FF8A3D33,#5B8DEF33)}
.rg-lens[aria-pressed=true] i{background:conic-gradient(#A97BFF 0 25%,#2FA36B 0 50%,#FF8A3D 0 75%,#5B8DEF 0)}
.rg-lens[aria-pressed=true] i::after{background:#fff;transform:translateX(14px)}
[dir=rtl] .rg-lens[aria-pressed=true] i::after{transform:translateX(-14px)}
.rg-campw{display:grid;gap:6px;min-width:0}
@media(min-width:900px){.rg-campw .rg-camps{flex-wrap:wrap;overflow:visible}}
.rg-camps{display:flex;gap:6px;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none}
.rg-camps::-webkit-scrollbar{display:none}
.rg-ck{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font:600 .8rem/1 var(--body);cursor:pointer;white-space:nowrap}
.rg-ck i{width:12px;height:12px;border-radius:50%;background:var(--cc)}
.rg-ck b{font-weight:800;color:var(--dim)}
.rg-ck.is-on{border-color:var(--cc);background:color-mix(in srgb,var(--cc) 26%,transparent)}
.rg-ck.is-on b{color:var(--ink)}
.rg-cw{margin:0;font-size:.8rem;line-height:1.35;color:var(--dim)}
@media(max-width:899px){.rg-campw:not(.has-c) .rg-cw{display:none}}
.rg-cbar{display:grid;gap:4px}
.rg-cb{display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr);gap:8px;align-items:center}
.rg-cbl{font-size:.75rem;font-weight:700;color:var(--dim);white-space:nowrap}
.rg-cbb{display:flex;height:10px;border-radius:999px;overflow:hidden;background:var(--raise)}
.rg-cbb i{display:block;height:100%}
/* the breadcrumb, and this reader's own count of the dossiers opened */
.rg-crumb{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;margin-top:var(--s3)}
.rg-crumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin:0;padding:0;list-style:none;min-width:0}
.rg-crumb li{display:flex;align-items:center;min-width:0}
.rg-crumb li+li::before{content:"";flex:none;width:7px;height:7px;margin:0 8px;border-top:2px solid var(--dim);border-inline-end:2px solid var(--dim);transform:rotate(45deg)}
[dir=rtl] .rg-crumb li+li::before{transform:rotate(-45deg)}
.rg-cr-b{min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font:700 .875rem/1 var(--body);cursor:pointer}
.rg-cr-b:hover{border-color:var(--ink)}
.rg-cr-here{display:inline-flex;align-items:center;min-height:40px;font:800 .95rem/1.2 var(--body);color:var(--ink)}
.rg-seen{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;background:var(--sunk);color:var(--dim);font-size:.75rem;font-weight:700}
.rg-seen::before{content:"";width:12px;height:9px;border-radius:2px;background:var(--dim);clip-path:polygon(0 0,40% 0,50% 18%,100% 18%,100% 100%,0 100%)}
/* the level you are on: only one shows once the script runs; without it every level is printed, one after the other */
.rg-board{margin-top:var(--s3)}
.rg-js .rg-board>.rg-l0:not(.is-on),.rg-js .rg-board>.rg-br:not(.is-on){display:none}
.rg-js .rg-board>.is-on{animation:rg-in .18s ease-out}
@keyframes rg-in{from{transform:translateY(6px)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.rg-js .rg-board>.is-on{animation:none}}
.rg-br+.rg-br,.rg-l0+.rg-br{margin-top:var(--s6)}
.rg-js .rg-br+.rg-br,.rg-js .rg-l0+.rg-br{margin-top:0}
.rg-none{margin:var(--s5) 0;padding:12px 16px;border-radius:12px;background:var(--panel);color:var(--dim);text-align:center}

/* ---------------------------------------------------------------- one face, everywhere */
.rg-face{--ring:var(--line);position:relative;display:block;flex:none;width:64px;height:64px;border-radius:50%}
.rg-face img,.rg-ini{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 22%;box-shadow:0 0 0 3px var(--ring);background:var(--raise)}
.rg-ini{display:flex;align-items:center;justify-content:center;font:800 1.15rem/1 var(--display);color:var(--dim)}
.is-unknown>.rg-face,.is-wounded>.rg-face{--ring:var(--rg-unk)}
.is-down>.rg-face{--ring:var(--rg-kill)}
.is-down>.rg-face img,.is-down>.rg-face .rg-ini{filter:grayscale(1) brightness(.68)}
.rg-x{position:absolute;inset-inline-end:-3px;top:-3px;width:24px;height:24px;border-radius:50%;background:var(--rg-kill);box-shadow:0 0 0 2px var(--bg)}
.rg-x::before,.rg-x::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:3px;border-radius:2px;background:#fff;transform:translate(-50%,-50%) rotate(45deg)}
.rg-x::after{transform:translate(-50%,-50%) rotate(-45deg)}
.rg-x-d{background:#6B6A64}
.rg-q{position:absolute;inset-inline-end:-3px;top:-3px;width:22px;height:22px;border-radius:50%;background:var(--rg-unk);color:#1A1406;font:900 .85rem/22px var(--body);text-align:center;font-style:normal;box-shadow:0 0 0 2px var(--bg)}
/* the faction lens: every ring takes its camp's colour; a face with no camp on record keeps a faint dashed ring */
.rg.is-lens .rg-face{--ring:var(--cc,transparent)}
.rg.is-lens .rg-face:not([style]) img,.rg.is-lens .rg-face:not([style]) .rg-ini{box-shadow:0 0 0 2px var(--line)}
/* a fall, the timeline moving: at a past day a fall that has not happened yet is in colour with no mark; a successor not
   yet in the chair is faint. At today everything is as the register says. */
.is-killed:not(.is-down)>.rg-face>.rg-x,.is-died:not(.is-down)>.rg-face>.rg-x{display:none}
.rg-s i{font-style:normal}
.rg-s-was,.rg-s-pre{display:none}
.is-past .is-killed:not(.is-down) .rg-s-now,.is-past .is-died:not(.is-down) .rg-s-now{display:none}
.is-past .is-killed:not(.is-down) .rg-s-was,.is-past .is-died:not(.is-down) .rg-s-was{display:inline}
.is-pre .rg-s-now,.is-pre .rg-s-was{display:none!important}
.is-pre .rg-s-pre{display:inline}
.is-pre{opacity:.32}
/* who to show (the status filter) and one camp lit: the rest fade; a search hit glows */
.is-dim{opacity:.22}
.is-fade{opacity:.14;filter:grayscale(.6)}
.is-hit{outline:3px solid var(--field);outline-offset:3px;border-radius:14px}
.is-hit>.rg-face img,.is-hit>.rg-face .rg-ini{box-shadow:0 0 0 3px var(--field),0 0 0 9px color-mix(in srgb,var(--field) 30%,transparent)}
/* a card this reader has opened before: a small tick on the face */
.is-seen>.rg-face::after{content:"";position:absolute;inset-inline-start:-2px;bottom:-2px;width:16px;height:16px;border-radius:50%;background:var(--ink) no-repeat 50% 55%/10px 8px;box-shadow:0 0 0 2px var(--bg);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 8'%3E%3Cpath d='M1 4l2.6 2.6L9 1' fill='none' stroke='%23101010' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.rg-s{display:block;font-size:.75rem;line-height:1.3;font-weight:700;color:var(--dim)}
.is-down .rg-s,.is-killed .rg-s-now{color:var(--rg-kill)}
.is-unknown .rg-s,.is-wounded .rg-s{color:var(--rg-unk)}
.is-alive .rg-s{color:var(--dim)}

/* ---------------------------------------------------------------- LEVEL 0: who holds power */
.rg-l0h h2{font-size:clamp(1.6rem,6vw,2.4rem)}
.rg-l0h p{margin-top:4px;color:var(--dim);font-size:.95rem}
.rg-hero{margin-top:var(--s4)}

.rg-hero-h,.rg-subh,.rg-most-h,.rg-pvlh{margin:0 0 var(--s2);font:800 .78rem/1.2 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
[lang=fa] .rg-hero-h,[lang=fa] .rg-subh,[lang=fa] .rg-most-h,[lang=fa] .rg-pvlh{letter-spacing:0;text-transform:none;font-size:.85rem}
.rg-subh b{margin-inline-start:4px;color:var(--ink)}
/* the most emptied chairs: a quiet strip that slides sideways */
.rg-most{margin-top:var(--s5)}
.rg-most-l{display:flex;gap:8px;margin:0;padding:0 0 4px;list-style:none;overflow-x:auto;scrollbar-width:thin}
.rg-most-l li{flex:none}
.rg-mo{display:flex;align-items:center;gap:10px;min-height:56px;max-width:260px;padding:8px 12px 8px 10px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel);color:var(--ink);font:inherit;text-align:start;cursor:pointer}
.rg-mo:hover{border-color:var(--rg-kill)}
.rg-mo-f{display:flex;flex:none}
.rg-mo-f .rg-mf+.rg-mf{margin-inline-start:-10px}
.rg-mo-t{display:flex;flex-direction:column;min-width:0}
.rg-mo-t b{font-size:.84rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rg-mo-n{font-size:.75rem;font-weight:800;color:var(--rg-kill)}
.rg-mf{display:block;flex:none}
.rg-mf .rg-face{width:30px;height:30px}
.rg-mf .rg-face img,.rg-mf .rg-ini{box-shadow:0 0 0 2px var(--panel)}
.rg-mf.is-down .rg-face img,.rg-mf.is-down .rg-ini{box-shadow:0 0 0 2px var(--rg-kill)}
.rg.is-lens .rg-mf:not(.is-down) .rg-face[style] img,.rg.is-lens .rg-mf:not(.is-down) .rg-face[style] .rg-ini{box-shadow:0 0 0 2px var(--cc)}
.rg-mf .rg-ini{font-size:.75rem}
.rg-mf .rg-x,.rg-mf .rg-q,.rg-mf .rg-face::after{display:none}
.rg-mf.is-down .rg-face::before{content:"";position:absolute;inset:0;z-index:1;border-radius:50%;background:linear-gradient(to top right,transparent calc(50% - 1.5px),var(--rg-kill) calc(50% - 1.5px),var(--rg-kill) calc(50% + 1.5px),transparent calc(50% + 1.5px))}
@media(min-width:1100px){
  .rg-l0{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:var(--s5);align-items:start}
  .rg-l0h,.rg-tiles{grid-column:1/-1}
  .rg-most{margin-top:var(--s4)}
  .rg-most-l{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  .rg-mo{max-width:none;width:100%}
}/* the tiles: a branch each, in power order */
.rg-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:var(--s5)}
@media(min-width:720px){.rg-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
@media(min-width:1100px){.rg-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rg-tile{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);text-decoration:none;transition:transform .12s,border-color .12s}
.rg-tile:hover{transform:translateY(-2px);border-color:var(--dim)}
.rg-tile:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-tl-h{display:flex;flex-direction:column;gap:2px;padding-inline-end:22px}
.rg-tl-n{font:900 1.2rem/1.05 var(--display);letter-spacing:.01em}
[lang=fa] .rg-tl-n{font-family:var(--body);font-weight:800;font-size:1.05rem;line-height:1.3}
.rg-tl-sz{font-size:.75rem;font-weight:700;color:var(--dim)}
.rg-tl-go{position:absolute;top:16px;inset-inline-end:14px;width:9px;height:9px;border-top:2.5px solid var(--dim);border-inline-end:2.5px solid var(--dim);transform:rotate(45deg)}
[dir=rtl] .rg-tl-go{transform:rotate(-45deg)}
.rg-tile:hover .rg-tl-go{border-color:var(--ink)}
.rg-tl-hd{display:flex;align-items:center;gap:10px;min-width:0}
.rg-tl-hd .rg-face{width:52px;height:52px}
.rg-tl-ht{display:flex;flex-direction:column;min-width:0}
.rg-tl-ht b{font-size:.875rem;line-height:1.2;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rg-tl-hr{font-size:.75rem;line-height:1.3;color:var(--dim);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:419px){.rg-tl-hd{flex-direction:column;align-items:flex-start;gap:6px}}
.rg-tl-mini{display:flex;padding-inline-start:2px}
.rg-tl-mini .rg-mf+.rg-mf{margin-inline-start:-8px}
.rg-tl-map{display:block;width:100%;max-width:150px}
.rg-tl-map svg{display:block;width:100%;height:auto}
.rg-tl-map use{fill:var(--raise);stroke:var(--panel);stroke-width:3}
/* the damage meter: "9 of 15 taken out" */
.rg-mt{display:grid;gap:4px;margin-top:auto}
.rg-mtb{display:block;height:6px;border-radius:999px;background:var(--raise);overflow:hidden}
.rg-mtb i{display:block;height:100%;background:var(--rg-kill);border-radius:999px}
.rg-mtt{font-size:.75rem;font-weight:700;color:var(--dim)}
.rg-mt.is-lg{max-width:360px}
.rg-mt.is-lg .rg-mtb{height:10px}
.rg-mt.is-lg .rg-mtt{font-size:.875rem;color:var(--ink)}

/* ---------------------------------------------------------------- LEVEL 1: a branch, its parts, its chairs */
.rg-brh{display:grid;gap:10px;margin-bottom:var(--s4)}
.rg-brh h2{font-size:clamp(1.8rem,7vw,2.8rem)}
.rg-sub{margin-top:var(--s5)}
.rg-sub:first-of-type{margin-top:0}
.rg-chairs{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}
@media(min-width:720px){.rg-chairs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.rg-chairs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rg-ch{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}
.rg-ch.is-also{border-style:dashed}
.rg-cm{display:flex;align-items:center;gap:14px;width:100%;min-height:88px;padding:12px 14px;border:0;background:transparent;color:var(--ink);font:inherit;text-align:start;cursor:pointer}
.rg-cm:hover{background:var(--raise)}
.rg-cm:focus-visible,.rg-pp:focus-visible,.rg-rw:focus-visible,.rg-mo:focus-visible{outline:2px solid var(--field);outline-offset:-2px}
.rg-cmt{display:flex;flex-direction:column;gap:2px;min-width:0}
.rg-cmr{font-size:.78rem;line-height:1.3;color:var(--dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rg-cmn{font-size:1.05rem;line-height:1.2;font-weight:800;overflow-wrap:anywhere}
.rg-cmu{font-size:.75rem;color:var(--dim)}
.rg-ch.is-big .rg-cm{gap:18px;padding:16px}
.rg-ch.is-big .rg-cm .rg-face{width:104px;height:104px}
.rg-ch.is-big .rg-cm .rg-x{width:34px;height:34px}.rg-ch.is-big .rg-cm .rg-x::before,.rg-ch.is-big .rg-cm .rg-x::after{width:18px;height:4px}
.rg-ch.is-big .rg-cm .rg-q{width:30px;height:30px;line-height:30px;font-size:1.1rem}
.rg-ch.is-big .rg-cmn{font:900 clamp(1.5rem,6vw,2.1rem)/1.02 var(--display)}
[lang=fa] .rg-ch.is-big .rg-cmn{font-family:var(--body);font-weight:900;line-height:1.3}
.rg-ch.is-big .rg-cmr{font-size:.875rem}
.rg-ch.is-big .rg-s{font-size:.875rem}
/* the chair's line: "emptied 3 times", then everyone who sat in it before, newest first */
.rg-cl{padding:0 14px 12px;border-top:1px dashed var(--line)}
.rg-ce{margin:10px 0 6px;font-size:.75rem;font-weight:800;color:var(--rg-kill)}
.rg-ce::before{content:"";display:inline-block;width:8px;height:8px;margin-inline-end:6px;border-radius:2px;background:var(--rg-kill);transform:rotate(45deg)}
.rg-cpl{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none}
.rg-ce+.rg-cpl{margin-top:0}
.rg-pp{display:flex;align-items:center;gap:8px;min-height:44px;max-width:100%;padding:4px 10px 4px 4px;border:1px solid var(--line);border-radius:999px;background:var(--sunk);color:var(--ink);font:inherit;text-align:start;cursor:pointer}
[dir=rtl] .rg-pp{padding:4px 4px 4px 10px}
.rg-pp:hover{border-color:var(--dim)}
.rg-pp .rg-face{width:34px;height:34px}
.rg-pp .rg-face img,.rg-pp .rg-ini{box-shadow:0 0 0 2px var(--ring)}
.rg-pp .rg-x,.rg-pp .rg-q{width:16px;height:16px;line-height:16px;font-size:.75rem;top:-4px;inset-inline-end:-4px}
.rg-pp .rg-x::before,.rg-pp .rg-x::after{width:9px;height:2px}
.rg-pp .rg-ini{font-size:.75rem}
.rg-ppt{display:flex;flex-direction:column;min-width:0}
.rg-ppt b{font-size:.8rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.rg-ppt .rg-s{font-size:.75rem;white-space:nowrap}
.rg-pp .is-seen,.rg-pp.is-seen>.rg-face::after{width:12px;height:12px;background-size:7px 6px}
/* the way from the IRGC to its provincial corps */
.rg-topv{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:var(--s5);padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);text-decoration:none}
.rg-topv:hover{border-color:var(--dim)}
.rg-topv>span{display:flex;flex-direction:column;gap:2px}
.rg-topv span span{font-size:.875rem;color:var(--field);font-weight:700}
.rg-topv i{flex:none;width:10px;height:10px;border-top:2.5px solid var(--dim);border-inline-end:2.5px solid var(--dim);transform:rotate(45deg)}
[dir=rtl] .rg-topv i{transform:rotate(-45deg)}

/* ---------------------------------------------------------------- the rosters of the big bodies */
.rg-roster{margin-top:var(--s5);border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.rg-rs-s{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:56px;padding:0 16px;cursor:pointer;list-style:none;font-weight:800;font-size:1rem}
.rg-rs-s::-webkit-details-marker,.rg-rg>summary::-webkit-details-marker{display:none}
.rg-rs-s b{margin-inline-start:auto;font-size:.8rem;color:var(--rg-kill)}
.rg-rs-s::after,.rg-rg>summary::after{content:"";flex:none;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.rg-roster[open]>.rg-rs-s::after,.rg-rg[open]>summary::after{transform:rotate(-135deg);margin-top:4px}
.rg-roster[open]>.rg-rs-s{border-bottom:1px solid var(--line)}
.rg-rs-in{padding:8px}
.rg-rs-tools{display:grid;gap:8px;padding:4px 4px 8px}
.rg-rg{border-bottom:1px solid var(--line)}
.rg-rg:last-child{border-bottom:0}
.rg-rg>summary{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 10px;cursor:pointer;list-style:none;font-weight:700}
.rg-rg>summary b{margin-inline-start:auto;font-size:.8rem;color:var(--dim)}
.rg-rs-none{padding:12px;color:var(--dim)}
.rg-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;margin:0 0 6px;padding:0;list-style:none}
@media(min-width:720px){.rg-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){.rg-rows{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rg-rw{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:6px 10px;border:0;border-radius:10px;background:transparent;color:var(--ink);font:inherit;text-align:start;cursor:pointer}
.rg-rw:hover{background:var(--raise)}
.rg-rw .rg-face{width:36px;height:36px}
.rg-rw .rg-face img,.rg-rw .rg-ini{box-shadow:0 0 0 2px var(--ring)}
.rg-rw .rg-ini{font-size:.75rem}
.rg-rw .rg-x,.rg-rw .rg-q{width:16px;height:16px;line-height:16px;font-size:.75rem;top:-4px;inset-inline-end:-4px}
.rg-rw .rg-x::before,.rg-rw .rg-x::after{width:9px;height:2px}
.rg-rw.is-seen>.rg-face::after{width:12px;height:12px;background-size:7px 6px}
.rg-rwt{display:flex;flex-direction:column;min-width:0;flex:1}
.rg-rwt b{font-size:.875rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-rws{font-size:.75rem;line-height:1.3;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-rw .rg-s{flex:none;max-width:40%;text-align:end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-rw.is-alive .rg-s{display:none}
.rg-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--cc)}
.rg:not(.is-lens) .rg-dot{opacity:.75}

/* ---------------------------------------------------------------- the provinces: the map, one province open, the list */
.rg-pvw{display:grid;gap:var(--s4)}
@media(min-width:1000px){.rg-pvw{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}}
.rg-map{position:relative;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
@media(min-width:1000px){.rg-js .rg-map{position:sticky;top:calc(var(--rg-top,0px) + 150px)}}
.rg-map svg{display:block;width:100%;height:auto}
.rg-pvp{fill:var(--raise);stroke:var(--bg);stroke-width:2.2;stroke-linejoin:round;cursor:pointer;transition:fill .15s}
.rg-pvp:hover{filter:brightness(1.45)}
.rg-pvp[data-n="2"]{fill:color-mix(in srgb,var(--ink) 14%,var(--raise))}.rg-pvp[data-n="3"]{fill:color-mix(in srgb,var(--ink) 26%,var(--raise))}
.rg-pvp[data-lv="1"]{fill:#6A2A2C}.rg-pvp[data-lv="2"]{fill:#8E2F32}.rg-pvp[data-lv="3"]{fill:#B5383C}.rg-pvp[data-lv=k]{fill:var(--rg-kill)}
.rg-pvp.is-sel{stroke:var(--field);stroke-width:6}
.rg-tl-map use{fill:var(--raise)}
.rg-pvl text{font:700 15px/1 var(--body);fill:var(--ink);text-anchor:middle;dominant-baseline:middle;pointer-events:none;paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}
@media(max-width:899px){.rg-pvl{display:none}}
.rg-map-h{margin:6px 0 0;font-weight:800;font-size:.95rem}
.rg-map-lg{display:flex;align-items:center;gap:8px;margin:4px 0 0;font-size:.75rem;color:var(--dim);line-height:1.3}
.rg-map-lg i{flex:none;width:44px;height:10px;border-radius:3px;background:linear-gradient(90deg,var(--raise) 0 33%,color-mix(in srgb,var(--ink) 26%,var(--raise)) 33% 66%,var(--rg-kill) 66%)}
.rg-pv{display:grid;gap:var(--s3);padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);min-width:0}
.rg-js .rg-pvs>.rg-pv:not(.is-on){display:none}
.rg-pvs{display:grid;gap:var(--s3);min-width:0}
.rg-js .rg-pvs:not(:has(.rg-pv.is-on)){display:none}
.rg-pvh h3{font-size:1.5rem;line-height:1.15}
.rg-pvh-alt{font-size:1rem;color:var(--dim);font-weight:600}
.rg-pvh p{margin-top:2px;font-size:.875rem;color:var(--dim)}
.rg-kc{color:var(--rg-kill)}
.rg-pvg2 h4{margin:0 0 8px;font:800 .78rem/1.2 var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}
[lang=fa] .rg-pvg2 h4{letter-spacing:0;text-transform:none;font-size:.85rem}
.rg-pvg2 h4 b{color:var(--ink)}
.rg-pv .rg-chairs{grid-template-columns:minmax(0,1fr)}
.rg-pv .rg-rows{grid-template-columns:minmax(0,1fr)}
@media(min-width:720px) and (max-width:999px){.rg-pv .rg-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rg-pvsee{display:inline-flex;align-items:center;min-height:40px;font-size:.875rem;font-weight:700;color:var(--field)}
.rg-pvlh{margin-top:var(--s5)}
.rg-pvlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}
@media(min-width:720px){.rg-pvlist{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.rg-pvlist{grid-template-columns:repeat(5,minmax(0,1fr))}}
.rg-pvb{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);text-decoration:none;font-size:.875rem;font-weight:700}
.rg-pvb span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rg-pvb b{flex:none;font-size:.75rem;color:var(--dim)}
.rg-pvb:hover{border-color:var(--dim)}
.rg-pvb.is-on{border-color:var(--field);box-shadow:inset 0 0 0 1px var(--field)}

/* ---------------------------------------------------------------- day by day */
.rg-days{margin-top:var(--s4)}
.rg-dw+.rg-dw{margin-top:var(--s6)}
.rg-dwh{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-size:clamp(1.4rem,5vw,2rem)}
.rg-dwh span{font:800 .875rem/1 var(--body);color:var(--rg-kill)}
.rg-dd{margin-top:var(--s3);padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.rg-ddh{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 6px;padding:0 4px}
.rg-ddh b{font-size:1rem;color:var(--rg-kill)}
.rg-ddl .rg-s{display:none}      /* the day is the heading above: the fate line would say it twice */
.rg-dd.is-future{opacity:.38}
.rg-dd.is-future .rg-ddh b{color:var(--dim)}
.rg-op{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--raise);font-size:.75rem;font-weight:700;color:var(--dim)}

/* ---------------------------------------------------------------- the timeline, docked at the foot of the stage */
.rg-dock{position:sticky;bottom:var(--rg-bot,0px);z-index:19;display:grid;gap:6px;margin:var(--s5) calc(-1 * var(--gutter,16px)) 0;padding:8px calc(var(--gutter,16px) + var(--rg-pr,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(var(--gutter,16px) + var(--rg-pl,0px));border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 -10px 28px rgba(0,0,0,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
@media(min-width:900px){.rg-dock{margin-inline:0;border:1px solid var(--line);border-radius:14px 14px 0 0;padding-inline:14px}}
.rg-dk1{display:flex;align-items:center;gap:10px;min-width:0}
.rg-play{flex:none;min-height:44px;display:inline-flex;align-items:center;gap:8px}
.rg-play-i{width:0;height:0;border-block:7px solid transparent;border-inline-start:11px solid currentColor}
.rg-play.is-on .rg-play-i{width:10px;height:12px;border:0;border-inline:3px solid currentColor}
.rg-track{position:relative;flex:1;min-width:0;padding-top:16px}
.rg-ticks{position:absolute;left:11px;right:11px;top:0;height:18px;pointer-events:none;overflow:hidden}
.rg-tick{position:absolute;bottom:0;width:2px;background:var(--rg-kill);border-radius:1px;opacity:.85}
.rg-tick.is-d{background:var(--dim);opacity:.6}
.rg-opband{position:absolute;bottom:-4px;height:4px;background:rgba(229,72,77,.35);border-radius:2px}
.rg-track input{-webkit-appearance:none;appearance:none;display:block;width:100%;height:40px;margin:0;background:transparent;cursor:pointer;touch-action:pan-y}
.rg-track input:focus{outline:none}
.rg-track input::-webkit-slider-runnable-track{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--line),var(--rg-kill))}
.rg-track input::-moz-range-track{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--line),var(--rg-kill))}
[dir=rtl] .rg-track input::-webkit-slider-runnable-track{background:linear-gradient(270deg,var(--line),var(--rg-kill))}
.rg-track input::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-9px;border-radius:50%;background:var(--ink);border:3px solid var(--bg);box-shadow:0 0 0 2px var(--rg-kill)}
.rg-track input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--ink);border:3px solid var(--bg);box-shadow:0 0 0 2px var(--rg-kill)}
.rg-track input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--rg-kill),0 0 0 6px rgba(229,72,77,.4)}
.rg-dk2{display:flex;align-items:center;gap:10px;min-width:0}
.rg-day{flex:none;display:flex;flex-direction:column;gap:2px;min-width:0}
.rg-day b{font:900 1.05rem/1.1 var(--display);white-space:nowrap}
[lang=fa] .rg-day b{font-family:var(--body)}
.rg-warnow{display:inline-flex;align-items:center;align-self:flex-start;min-height:20px;padding:0 8px;border-radius:999px;background:rgba(229,72,77,.16);color:var(--rg-kill);font-size:.75rem;font-weight:800;white-space:nowrap}
.rg-wars{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;min-width:0;flex:1}
.rg-wars::-webkit-scrollbar{display:none}
.rg-war{flex:none;display:inline-flex;align-items:baseline;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;font:inherit;white-space:nowrap}
.rg-war b{font-size:.82rem}.rg-war span{font-size:.75rem;color:var(--dim);font-weight:600}
.rg-war.is-on{border-color:var(--rg-kill);background:rgba(229,72,77,.12)}
.rg-war.is-on span{color:var(--rg-kill)}
.rg-war.is-today.is-on{border-color:var(--field);background:color-mix(in srgb,var(--field) 18%,transparent)}
.rg-war.is-today.is-on span{color:var(--ink)}
.rg-ev{margin:0;font-size:.8rem;line-height:1.35;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-ev b{color:#FF8A8D}
.rg:not(.is-past) .rg-ev,.rg-ev:empty{display:none}
.rg-ev .rg-op{margin-inline-start:8px}
@media(min-width:900px){
  .rg-dock{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:var(--s4);align-items:center}
  .rg-ev{grid-column:1/-1}
}

/* ---------------------------------------------------------------- what we know: the war, the targets, the odds */
.rg-intel{margin-top:var(--s5);background:var(--panel);border-radius:var(--r2)}
.rg-intel summary{cursor:pointer;min-height:48px;display:flex;align-items:center;gap:10px;padding:var(--s2) var(--s4);font-weight:700;list-style:none}
.rg-intel summary::-webkit-details-marker{display:none}
.rg-intel summary::after{content:"";flex:none;margin-inline-start:auto;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.rg-intel[open] summary::after{transform:rotate(-135deg)}
.rg-side{display:grid;gap:var(--s4);margin:0;padding:0 var(--s4) var(--s4)}
@media(min-width:900px){.rg-side{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rg-side h3{font-size:1.05rem}
.rg-side p,.rg-side li{font-size:.88rem;line-height:1.45}
.rg-side ul{list-style:none;margin:var(--s2) 0 0;padding:0;display:grid;gap:var(--s2)}
.rg-side a{color:var(--dim);margin-inline-end:8px;font-size:.8rem;display:inline-flex;align-items:center;min-height:40px}
.rg-mk li{display:flex;gap:10px;align-items:baseline}
.rg-mk li b{font:900 1.2rem/1 var(--display);color:var(--field);flex:none;min-width:3.2em}
.rg-mk small{display:block;margin-top:2px;font-size:.75rem;color:var(--dim);line-height:1.35}
.rg-mk-h{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}
.rg-mk-h .mk-sw{margin-inline-start:auto}
.rg-mk-t{font-size:.75rem;color:var(--dim)}
.rg-mk .mk-aff{margin-top:var(--s2);font-size:.75rem;color:var(--dim)}
.rg-now p{margin-top:var(--s2)}
.rg-foot{margin-top:var(--s5);font-size:.85rem;color:var(--dim);max-width:70ch}

/* ---------------------------------------------------------------- the card: one person. A sheet from the bottom on a phone,
   a panel at the side on a computer (the board stays live beside it) */
html.rg-lock{overflow:hidden}
.rg-sheet{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.66);display:flex;align-items:flex-end;justify-content:center}
.rg-sheet.is-side{inset:0 0 0 auto;width:min(460px,40vw);background:none;align-items:stretch}
[dir=rtl] .rg-sheet.is-side{inset:0 auto 0 0}
.rg-sh-in{width:100%;max-width:640px;max-height:88vh;overflow-y:auto;overscroll-behavior:contain;padding:var(--s3) var(--s4) var(--s6);background:var(--panel);border-radius:18px 18px 0 0;border-top:1px solid var(--line);box-shadow:0 -18px 50px rgba(0,0,0,.45);touch-action:pan-y}
.rg-sheet.is-side .rg-sh-in{max-height:none;height:100%;border-radius:0;border-top:0;border-inline-start:1px solid var(--line);box-shadow:-20px 0 50px rgba(0,0,0,.5);padding:var(--s3) var(--s5) var(--s6)}
.rg-sh-nav{display:flex;align-items:center;gap:6px;margin-bottom:var(--s3)}
.rg-sh-nb{flex:none;position:relative;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--sunk);color:var(--ink);cursor:pointer}
.rg-sh-nb::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;border-top:2.5px solid currentColor;border-inline-start:2.5px solid currentColor;transform:translate(-30%,-50%) rotate(-45deg)}
.rg-sh-nb.is-next::after{transform:translate(-70%,-50%) rotate(135deg)}
[dir=rtl] .rg-sh-nb::after{transform:translate(-70%,-50%) rotate(45deg)}
[dir=rtl] .rg-sh-nb.is-next::after{transform:translate(-30%,-50%) rotate(-135deg)}
.rg-sh-nb:disabled{opacity:.35;cursor:default}
.rg-sh-nb:not(:disabled):hover{border-color:var(--ink)}
.rg-sh-at{flex:1;font-size:.8rem;font-weight:700;color:var(--dim)}
.rg-sh-x{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--raise);color:var(--ink);font-size:1.6rem;line-height:1;cursor:pointer}
.rg-sh-top{display:flex;gap:var(--s3);align-items:center}
.rg-sh-top>.rg-face{width:96px;height:96px}
.rg-sh-top .rg-x{width:30px;height:30px}.rg-sh-top .rg-x::before,.rg-sh-top .rg-x::after{width:16px;height:3.5px}
.rg-sh-top .rg-q{width:28px;height:28px;line-height:28px;font-size:1rem}
.rg-sh-t{flex:1;min-width:0}
.rg-sh-t h2{font-size:clamp(1.5rem,6vw,2.1rem);overflow-wrap:anywhere}
.rg-sh-alt{margin-top:2px;color:var(--dim);font-size:.95rem;text-align:left}
[dir=rtl] .rg-sh-alt{text-align:right}
.rg-pill{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:999px;font-size:.8rem;font-weight:800;background:var(--raise)}
.rg-pill.is-killed{background:var(--rg-kill);color:#fff}
.rg-pill.is-unknown,.rg-pill.is-wounded{background:var(--rg-unk);color:#1A1406}
.rg-pill.is-alive{background:var(--field);color:var(--on-field)}
.rg-sh-sn{margin-top:var(--s3);font-size:.95rem;line-height:1.5}
.rg-sh-f{display:grid;grid-template-columns:auto 1fr;gap:4px var(--s3);margin:var(--s3) 0 0;font-size:.88rem}
.rg-sh-f dt{color:var(--dim);font-weight:700}
.rg-sh-f dd{margin:0}
.rg-sh-seats{display:grid;gap:6px;margin:var(--s3) 0 0;padding:0;list-style:none}
.rg-sh-seats li{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:10px;background:var(--sunk);font-size:.9rem;line-height:1.35}
.rg-sh-seats li.is-also{background:var(--raise)}
.rg-sh-seats span{font-size:.78rem;color:var(--dim)}
.rg-sh-ch{display:grid;gap:var(--s2);margin-top:var(--s4)}
.rg-sh-line{display:flex;align-items:center;gap:6px;margin-top:var(--s2);overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.rg-sh-line .rg-sh-cp{flex:none;max-width:220px}
.rg-arrow{flex:none;width:14px;height:2px;background:var(--line);position:relative}
.rg-arrow::after{content:"";position:absolute;inset-inline-end:-1px;top:-4px;border-block:5px solid transparent;border-inline-start:7px solid var(--line)}
.rg-sh-cp{display:flex;align-items:center;gap:var(--s3);min-height:56px;padding:6px var(--s3);border:1px solid var(--line);border-radius:var(--r2);background:var(--sunk);color:var(--ink);font:inherit;text-align:start;cursor:pointer}
.rg-sh-cp.is-me{border-color:var(--field);box-shadow:inset 0 0 0 1px var(--field)}
.rg-sh-cp .rg-face{width:44px;height:44px}
.rg-sh-cp .rg-x,.rg-sh-cp .rg-q{width:18px;height:18px;line-height:18px;font-size:.75rem}
.rg-sh-cp .rg-x::before,.rg-sh-cp .rg-x::after{width:10px;height:2px}
.rg-sh-cp span{display:flex;flex-direction:column;min-width:0}
.rg-sh-cp small{font-size:.75rem;color:var(--dim)}
.rg-sh-c{margin-top:var(--s4);padding:var(--s3);border-radius:var(--r2);background:color-mix(in srgb,var(--cc) 10%,var(--sunk));border:1px solid color-mix(in srgb,var(--cc) 40%,var(--line))}
.rg-sh-ct b::before{content:"";display:inline-block;width:10px;height:10px;margin-inline-end:6px;border-radius:50%;background:var(--cc);vertical-align:0}
.rg-sh-c p{font-size:.88rem;line-height:1.45;margin-top:4px}
.rg-sh-ct{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;margin-top:0!important}
.rg-sh-k{font-size:.75rem;color:var(--dim);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
[lang=fa] .rg-sh-k{text-transform:none;letter-spacing:0}
.rg-sure{font-size:.75rem;padding:1px 8px;border-radius:999px;background:var(--raise);color:var(--dim)}
.rg-sh-in h3{margin-top:var(--s4);font-size:1.05rem}
.rg-sh-in>p{margin-top:4px}
.rg-sh-past{margin:4px 0 0;padding-inline-start:20px;font-size:.88rem}
.rg-sh-src{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;margin-top:var(--s4);font-size:.8rem}
.rg-sh-src a{color:var(--dim);min-height:24px}
.rg-sh-cr{margin-top:var(--s2);font-size:.75rem;color:var(--dim)}
.rg-sh-share{margin-top:var(--s4);min-height:44px}

/* THE STREAM VIEW (build/stream.js, build/stream.css; Armin, 31 October 2026: "when I'm showing these tools on a live stream,
   it makes perfect sense, and people can see what's going on, even if it's on a small screen"). The stage fills the screen
   on the left (its board scrolls inside it), the title, the count and Share stand on the right; everything is zoomed with
   the screen (--lps-z). What the war stands at, the odds and the source line stay on the page. */
html.lp-stream #regime{padding:0;height:100%}
html.lp-stream #regime .wrap{display:grid;grid-template-columns:minmax(0,1fr) calc(330px * var(--lps-z));grid-template-rows:auto minmax(0,1fr);column-gap:calc(16px * var(--lps-z));
  height:100%;max-width:none;margin:0;padding:calc(10px * var(--lps-z)) calc(14px * var(--lps-z))}
html.lp-stream #regime .wrap>noscript,html.lp-stream #regime .rg-intel,html.lp-stream #regime .rg-foot,html.lp-stream #regime .ob,html.lp-stream #regime .wrap>.lpc,html.lp-stream #regime .rg-latest{display:none!important}
html.lp-stream .rg-head{display:block;grid-column:2;grid-row:1/span 2;zoom:var(--lps-z);max-width:none;min-height:0;overflow:hidden;padding-top:46px}
html.lp-stream .rg-hl,html.lp-stream .rg-hr{display:block;padding:0;border:0;background:none}
html.lp-stream .rg-hr{margin-top:14px}
html.lp-stream .rg-hr .rg-count{margin-top:0}
html.lp-stream .rg h1{margin-top:6px;font-size:2.3rem}
html.lp-stream .rg-lede{margin-top:8px;font-size:.85rem;line-height:1.45}
html.lp-stream .rg-count{margin-top:14px;gap:6px}
html.lp-stream .rg-cn{padding:8px}
html.lp-stream .rg-cn span,html.lp-stream .rg-share-l,html.lp-stream .rg-kick{font-size:.85rem}
html.lp-stream .rg-acts{margin-top:12px}
html.lp-stream .rg-tabs{grid-column:1;grid-row:1;margin:0 0 calc(6px * var(--lps-z));zoom:var(--lps-z)}
html.lp-stream .rg-stage,html.lp-stream .rg-stage.is-js{grid-column:1;grid-row:2;display:flex;flex-direction:column;margin:0;min-height:0;height:100%}
html.lp-stream .rg-bar,html.lp-stream .rg-crumb,html.lp-stream .rg-dock,html.lp-stream .rg-sh-in{zoom:var(--lps-z)}
html.lp-stream .rg-bar{position:static;flex:none;margin:0;border-radius:var(--r2)}
html.lp-stream .rg-crumb{flex:none}
html.lp-stream .rg-board,html.lp-stream .rg-days{flex:1 1 auto;min-height:0;overflow-y:auto;margin-top:6px;zoom:var(--lps-z)}
html.lp-stream .rg-dock{position:static;flex:none;margin:6px 0 0;border-radius:var(--r2)}
html.lp-stream .rg-f,html.lp-stream .rg-lens,html.lp-stream .rg-ck,html.lp-stream .rg-war b,html.lp-stream .rg-war span,html.lp-stream .rg-cr-b,html.lp-stream .rg-seen,html.lp-stream .rg-cw,html.lp-stream .rg-cbl,html.lp-stream .rg-warnow,html.lp-stream .rg-ev{font-size:.85rem}
html.lp-stream .rg-ctl2,html.lp-stream .rg-camps{flex-wrap:wrap;overflow:visible}
html.lp-stream .rg-campw:not(.has-c) .rg-cw{display:none}
html.lp-stream .rg-dock{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}

/* ---------------------------------------------------------------- 2 Nov 2026: a face with no photo
   (Armin: "If no picture is available, you have to have something less boring than what you have right now"). The figure
   of their post (regime.py AV_SPRITE: civilian, uniform, cleric, seyyed cleric, woman) on a tint of it, the initials on
   the chest; under 46px only the figure. It keeps .rg-ini, so every ring, fall and lens rule above still applies. */
.rg-avs{position:absolute;width:0;height:0;overflow:hidden}
.rg-av{position:relative;overflow:hidden;container-type:inline-size;color:transparent;
  --av-1:#C9B8A3;--av-2:#1C222B;--av-3:#E8E3D8;--av-4:#2A2522;background:radial-gradient(115% 95% at 50% 12%,#5A6880 0%,#2A3342 60%,#1A2029 100%)}
.rg-av svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.rg-av b{position:absolute;left:0;right:0;bottom:7%;text-align:center;font:800 15cqi/1 var(--body);letter-spacing:.05em;color:#F3F1EA;text-shadow:0 1px 3px rgba(0,0,0,.8)}
@container (max-width:46px){.rg-av b{display:none}}
.rg-av[data-av=mi]{--av-2:#2F3B27;--av-3:#D6BE5E;background:radial-gradient(115% 95% at 50% 12%,#6E7C5C 0%,#38422E 60%,#20271B 100%)}
.rg-av[data-av=cl],.rg-av[data-av=cs]{--av-2:#1A1613;--av-3:#A8977A;--av-4:#4A4440;background:radial-gradient(115% 95% at 50% 12%,#7E6C55 0%,#463A2C 60%,#261F18 100%)}
.rg-av[data-av=wo]{--av-2:#121013;--av-3:#3A3239;background:radial-gradient(115% 95% at 50% 12%,#7D6676 0%,#45363F 60%,#271E24 100%)}

/* ---------------------------------------------------------------- 2 Nov 2026: the key players
   (Armin: "there needs to be a way to clearly see who the key players are ... a version of this for people to be able to
   only track and see the most important people"). A gold star on a key player's face wherever they are; the Key players
   tab: the reader's watchlist, the 20 as cards (the Supreme Leader across the top), the biggest names taken out. */
.rg{--rg-star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.2l2.95 6.2 6.8.82-5.02 4.66 1.32 6.72L12 17.27 5.95 20.6l1.32-6.72L2.25 9.22l6.8-.82z'/%3E%3C/svg%3E");
  --rg-star-o:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.6l2.5 5.3 5.8.7-4.3 4 1.13 5.73L12 16.47l-5.13 2.86L8 13.6l-4.3-4 5.8-.7z' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E")}
.rg-kstar,.rg-wstar{display:inline-block;flex:none;width:1em;height:1em;vertical-align:-.13em;background:var(--field);-webkit-mask:var(--rg-star) 50% 50%/contain no-repeat;mask:var(--rg-star) 50% 50%/contain no-repeat}
[data-key]>.rg-face::before{content:"";position:absolute;z-index:2;inset-inline-start:-3px;top:-3px;width:22px;height:22px;border-radius:50%;box-shadow:0 0 0 2px var(--bg);
  background:var(--field) no-repeat 50% 46%/13px 13px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2314120B' d='M12 2.2l2.95 6.2 6.8.82-5.02 4.66 1.32 6.72L12 17.27 5.95 20.6l1.32-6.72L2.25 9.22l6.8-.82z'/%3E%3C/svg%3E")}
.rg-rw[data-key]>.rg-face::before,.rg-pp[data-key]>.rg-face::before,.rg-mf[data-key]>.rg-face::before,.rg-sh-cp[data-key]>.rg-face::before{width:15px;height:15px;background-size:9px 9px;inset-inline-start:-4px;top:-4px;box-shadow:0 0 0 1.5px var(--bg)}
.rg:not(.is-lens) [data-key].is-alive>.rg-face{--ring:var(--field)}
.rg:not(.is-lens) .rg-mf[data-key].is-alive .rg-face img,.rg:not(.is-lens) .rg-mf[data-key].is-alive .rg-ini{box-shadow:0 0 0 2px var(--field)}
.rg-tab .rg-kstar{margin-inline-end:7px}
.rg-tab.is-on .rg-kstar{background:#A87A00}

.rg-keyv{margin-top:var(--s3)}
.rg-js .rg-keyv[hidden]{display:none}
.rg-kh{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s4)}
.rg-kh h2{font-size:clamp(1.6rem,6vw,2.4rem)}
.rg-ksub{margin-top:4px;color:var(--dim);font-size:.95rem;line-height:1.45;max-width:62ch}
.rg-kh3{display:flex;align-items:center;gap:8px;font-size:1.15rem}
.rg-kall{min-height:44px}
.rg-kl{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:0;padding:0;list-style:none}
@media(min-width:640px){.rg-kl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.rg-kl{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1600px){.rg-kl{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rg-kc{position:relative;min-width:0;display:flex}
.rg-kb{position:relative;display:flex;align-items:center;gap:14px;width:100%;min-height:118px;padding:14px;padding-inline-end:52px;border:1px solid var(--line);border-radius:16px;
  background:linear-gradient(160deg,var(--raise),var(--panel) 55%);color:var(--ink);font:inherit;text-align:start;cursor:pointer;overflow:hidden;transition:border-color .12s,transform .12s}
.rg-kb:hover{border-color:color-mix(in srgb,var(--field) 55%,var(--line));transform:translateY(-1px)}
.rg-kb:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-kb>.rg-face{width:84px;height:84px}
.rg-kn{position:absolute;inset-inline-end:14px;bottom:6px;font:900 2.6rem/1 var(--display);color:color-mix(in srgb,var(--field) 40%,transparent);pointer-events:none}
.rg-kt{display:flex;flex-direction:column;gap:3px;min-width:0;position:relative}
.rg-kname{font:900 1.4rem/1.05 var(--display);letter-spacing:.01em;overflow-wrap:anywhere}
[lang=fa] .rg-kname{font-family:var(--body);font-weight:900;font-size:1.15rem;line-height:1.35}
.rg-kpost{font-size:.82rem;line-height:1.3;font-weight:800;color:var(--field)}
.rg-kwhy{font-size:.82rem;line-height:1.4;color:var(--dim)}
.rg-kb .rg-s{margin-top:2px}
.rg-kc:first-child{grid-column:1/-1}
.rg-kc:first-child .rg-kb{min-height:150px;gap:20px;padding:18px;padding-inline-end:60px;border-color:color-mix(in srgb,var(--field) 45%,var(--line));
  background:radial-gradient(90% 140% at 0% 0%,color-mix(in srgb,var(--field) 16%,transparent),transparent 60%),linear-gradient(160deg,var(--raise),var(--panel) 55%)}
[dir=rtl] .rg-kc:first-child .rg-kb{background:radial-gradient(90% 140% at 100% 0%,color-mix(in srgb,var(--field) 16%,transparent),transparent 60%),linear-gradient(200deg,var(--raise),var(--panel) 55%)}
.rg-kc:first-child .rg-kb>.rg-face{width:116px;height:116px}
.rg-kc:first-child .rg-kname{font-size:clamp(1.7rem,6vw,2.3rem)}
[lang=fa] .rg-kc:first-child .rg-kname{font-size:1.5rem}
.rg-kc:first-child .rg-kwhy{font-size:.92rem;color:var(--ink)}
.rg-kc:first-child .rg-kn{font-size:4rem}
.rg-kc:nth-child(-n+4) .rg-kn{color:color-mix(in srgb,var(--field) 62%,transparent)}
.rg-kb .rg-x{width:28px;height:28px}
.rg-wb{position:absolute;z-index:3;inset-inline-end:4px;top:4px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer;color:var(--dim)}
.rg-wb::before{content:"";position:absolute;inset:11px;background:currentColor;-webkit-mask:var(--rg-star-o) 50% 50%/contain no-repeat;mask:var(--rg-star-o) 50% 50%/contain no-repeat}
.rg-wb:hover{color:var(--ink);background:var(--raise)}
.rg-wb.is-on{color:var(--field)}
.rg-wb.is-on::before{-webkit-mask-image:var(--rg-star);mask-image:var(--rg-star)}
.rg-wb:focus-visible{outline:2px solid var(--field);outline-offset:-2px}
.rg-klg{display:flex;align-items:center;gap:6px;margin:var(--s3) 0 var(--s6);font-size:.85rem;color:var(--dim)}
.rg-kfw{margin-top:var(--s2)}
.rg-kf{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px;margin:var(--s3) 0 0;padding:0;list-style:none}
.rg-kf>li{display:flex;min-width:0}
.rg-kfb{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:14px 10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);font:inherit;text-align:center;cursor:pointer}
.rg-kfb:hover{border-color:var(--rg-kill)}
.rg-kfb:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-kfb>.rg-face{width:72px;height:72px}
.rg-kfb .rg-kt{align-items:center}
.rg-kfb b{font-size:.95rem;line-height:1.2}
.rg-kfb .rg-kpost{color:var(--dim);font-weight:700;font-size:.75rem}
.rg-wl{margin-bottom:var(--s4);padding:12px 14px;border:1px solid color-mix(in srgb,var(--field) 40%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--field) 6%,var(--panel))}
.rg-wl.is-empty{border-style:dashed;background:transparent;padding:10px 14px}
.rg-wl.is-empty .rg-kh3{font-size:1rem}
.rg-wl.is-empty .rg-ksub{margin-top:2px;font-size:.875rem}
.rg-wll{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;margin:8px 0 0;padding:0;list-style:none}
.rg-wl.is-empty .rg-wll{display:none}
@media(min-width:720px){.rg-wll{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){.rg-wll{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rg-wli{position:relative;min-width:0}
.rg-wli .rg-rw{padding-inline-end:48px}
.rg-wli .rg-wb{top:4px}
.rg-sh-key{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.85rem;font-weight:800;color:var(--field)}
.rg-sh-kw{margin-top:var(--s3);padding:10px 12px;border-inline-start:3px solid var(--field);border-radius:8px;background:var(--sunk);font-weight:600;line-height:1.45}
.rg-sh-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--s4)}
.rg-sh-acts .rg-sh-share{margin-top:0}
.rg-sh-watch.rg-wb{position:relative;inset:auto;z-index:auto;width:auto;height:auto;min-height:44px;padding:0 18px;padding-inline-start:42px;border:1px solid var(--line);border-radius:999px;color:var(--ink);font:700 .95rem/1 var(--body)}
.rg-sh-watch.rg-wb::before{inset:auto;inset-inline-start:15px;top:50%;width:18px;height:18px;margin-top:-9px}
.rg-sh-watch.rg-wb.is-on{color:var(--field);border-color:var(--field)}
html.lp-stream .rg-keyv{flex:1 1 auto;min-height:0;overflow-y:auto;margin-top:6px;zoom:var(--lps-z)}
html.lp-stream .rg-wl,html.lp-stream .rg-wb{display:none}
.rg-kv{margin:0 0 var(--s6);padding:12px 14px;border:1px dashed var(--line);border-radius:14px}
.rg-kv ul{display:grid;gap:10px;margin:8px 0 0;padding:0;list-style:none}
@media(min-width:720px){.rg-kv ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rg-kv li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0}
.rg-kv li b{font-size:1rem}
.rg-kv li>span:first-of-type{font-size:.8rem;font-weight:800;color:var(--rg-unk)}
.rg-kv-n{flex-basis:100%;font-size:.85rem;color:var(--dim);line-height:1.45}
.rg-kv a{display:inline-flex;align-items:center;min-height:40px;font-size:.75rem;color:var(--dim)}
@media(max-width:639px){
  .rg-kb{gap:12px;min-height:104px;padding:12px;padding-inline-end:46px}
  .rg-kb>.rg-face{width:68px;height:68px}
  .rg-kname{font-size:1.25rem}
  .rg-kc:first-child .rg-kb{gap:14px;padding:14px;padding-inline-end:48px}
  .rg-kc:first-child .rg-kb>.rg-face{width:88px;height:88px}
  .rg-kc:first-child .rg-kname{font-size:1.75rem}
  .rg-kc:first-child .rg-kn{font-size:3rem}
  .rg-kn{font-size:2.1rem}
}
@media(max-width:560px){
  .rg-tabs{width:100%}
  .rg-tab{flex:1 1 auto;min-width:0;padding:0 8px;font-size:.875rem;white-space:normal;line-height:1.15;text-align:center}
  .rg-tab .rg-kstar{margin-inline-end:4px}
}
.rg-kb .rg-ce{margin:4px 0 0;font-size:.75rem}

/* EVERYONE: the whole regime as one chart (3 Nov 2026, regime.js "EVERYONE"). The window (.rg-ov) holds a plane (.rg-pln)
   that one transform moves and scales; the bands, the branch boxes and their parts are ordinary flow inside it. A face's
   colour says its fate (the legend): pale in place, red taken out, grey died, removed or arrested, amber unknown. Far out
   (.z-far) the names fold away and every face is a tile; a branch's name grows by --zi so it still reads. */
.rg-org{margin-top:var(--s3)}
.rg-oh{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);align-items:center;justify-content:space-between}
.rg-sz{display:flex;align-items:center;gap:var(--s2);min-width:0;max-width:100%}
.rg-sz-l{font-size:.8rem;font-weight:700;color:var(--dim);flex:none}
.rg-sz-b{display:flex;gap:4px;overflow-x:auto;min-width:0;padding:2px}
.rg-szb{flex:none;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:700 .85rem/1 var(--body,inherit);cursor:pointer;white-space:nowrap}
.rg-szb:hover{border-color:var(--dim)}
.rg-szb.is-on{background:var(--field);border-color:var(--field);color:var(--bg)}
.rg-szb:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.78rem;font-weight:600;color:var(--dim)}
.rg-legend span::before{content:"";display:inline-block;width:12px;height:12px;margin-inline-end:6px;border-radius:50%;vertical-align:-2px;background:var(--raise);box-shadow:inset 0 0 0 1px var(--line)}
.rg-legend .lg-k::before{background:var(--rg-kill);box-shadow:none}
.rg-legend .lg-g::before{background:var(--dim);box-shadow:none}
.rg-legend .lg-u::before{background:var(--rg-unk);box-shadow:none}
.rg-ov{position:relative;margin-top:var(--s3);height:min(72vh,780px);min-height:380px;overflow:hidden;border-radius:var(--r2);border:1px solid var(--line);
  background:var(--sunk);background-image:radial-gradient(circle,color-mix(in srgb,var(--line) 70%,transparent) 1px,transparent 1.2px);background-size:22px 22px;
  touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;overscroll-behavior:contain}
.rg-ov.is-grab{cursor:grabbing}
.rg-ov:focus-visible{outline:2px solid var(--field);outline-offset:2px}
@media(max-width:700px){.rg-ov{height:58vh;min-height:320px}.rg-ohint{font-size:.75rem}}
.rg-pln{position:absolute;left:0;top:0;transform-origin:0 0;padding:150px 28px 40px;display:flex;flex-direction:column;align-items:center;gap:110px}
.rg-pln.is-moving{will-change:transform}
.rg-oband{position:relative;width:100%;display:flex;flex-direction:column;align-items:center}
.rg-oband+.rg-oband::before{content:"";position:absolute;top:-110px;left:50%;width:2px;height:110px;background:var(--line)}
.rg-obl{margin-bottom:14px;padding:6px 14px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font:800 .8rem/1.2 var(--body,inherit);letter-spacing:.06em;text-transform:uppercase;color:var(--dim);
  transform:scale(var(--zi,1));transform-origin:50% 100%}
.rg-obr{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:96px 28px;width:100%;padding-top:80px}
.rg-obx{position:relative;display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;min-width:250px;max-width:1500px;padding:14px;border-radius:var(--r2);background:var(--panel);border:1px solid var(--line)}
.rg-oband.is-top .rg-obx{border-color:color-mix(in srgb,var(--field) 55%,var(--line));box-shadow:0 0 0 4px color-mix(in srgb,var(--field) 12%,transparent)}
.rg-obh{position:absolute;bottom:100%;inset-inline-start:0;width:calc(100% / var(--zi,1));padding-bottom:6px;transform:scale(var(--zi,1));transform-origin:0 100%;pointer-events:none}
[dir=rtl] .rg-obh{transform-origin:100% 100%}
.rg-obt{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}
.rg-obt b{font:800 1rem/1.15 var(--display,inherit);color:var(--ink)}
.rg-olf{font-size:.78rem;font-weight:700;color:var(--dim);white-space:nowrap}
.rg-olf.is-low{color:var(--rg-kill)}
.rg-opt{min-width:0}
.rg-oph{margin:0 0 8px;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--dim)}
.rg-og{display:grid;grid-template-columns:repeat(var(--cols,1),124px);gap:6px}
.rg-on{--ring:var(--line);position:relative;display:flex;align-items:center;gap:7px;width:124px;height:60px;padding:5px 6px;border-radius:var(--r);border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;text-align:start;cursor:pointer;overflow:hidden}
.rg-on:hover{border-color:var(--dim)}
.rg-on:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-on .rg-face{width:34px;height:34px}
.rg-on .rg-face img,.rg-on .rg-ini{box-shadow:0 0 0 2px var(--ring)}
.rg-on .rg-ini b{font-size:.75rem}
.rg-on .rg-x,.rg-on .rg-q,.rg-on .rg-face::after{transform:scale(.6);transform-origin:100% 0}
.rg-ont{display:flex;flex-direction:column;min-width:0}
.rg-ont b{font-size:.75rem;line-height:1.15;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rg-onr{font-size:.75rem;line-height:1.2;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-on.is-al{border-style:dashed;opacity:.85}
.rg-on.is-sl{grid-column:1/-1;width:auto;min-width:230px;height:84px;gap:12px;border-color:var(--field)}
.rg-on.is-sl .rg-face{width:62px;height:62px}
.rg-on.is-sl .rg-ont b{font-size:1rem}.rg-on.is-sl .rg-onr{font-size:.75rem}
/* fate as colour: the tile itself, so it still reads as a mosaic far out */
.rg-on.is-down{background:color-mix(in srgb,var(--rg-kill) 22%,var(--bg));border-color:var(--rg-kill)}
.rg-on.is-died.is-down,.rg-on.is-removed,.rg-on.is-arrested{background:color-mix(in srgb,var(--dim) 35%,var(--bg));border-color:var(--dim)}
.rg-on.is-unknown,.rg-on.is-wounded{border-color:var(--rg-unk)}
.rg-on.is-unknown{background:color-mix(in srgb,var(--rg-unk) 16%,var(--bg))}
.rg-on.is-pre{opacity:.3}
.rg.is-lens .rg-on:not(.is-down){border-color:var(--cc-b,var(--line))}
.z-far .rg-ont{visibility:hidden}
/* 4 Nov 2026: far out the face stays (it hid here, and pictures "disappeared" on zoom); regime.js lod() loads every one on screen */
.z-far .rg-on .rg-face{width:44px;height:44px}
.z-far .rg-oph{visibility:hidden}
.z-mid .rg-onr{visibility:hidden}
.rg-oz{position:absolute;inset-inline-end:10px;top:10px;display:flex;flex-direction:column;gap:6px;z-index:2}
.rg-zb{min-width:44px;min-height:44px;padding:0 10px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:800 1.15rem/1 var(--body,inherit);cursor:pointer}
.rg-zb.is-fit{font-size:.78rem}
.rg-zb:hover{border-color:var(--dim)}
.rg-ohint{position:absolute;inset-inline-start:10px;top:10px;max-width:calc(100% - 90px);padding:8px 12px;border-radius:10px;background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--line);font-size:.78rem;font-weight:600;color:var(--dim);pointer-events:none;z-index:2}
.rg-onote{margin-top:var(--s2);font-size:.8rem;color:var(--dim)}
.rg-tabs{overflow-x:auto}
@media(max-width:700px){
  .rg-oz{flex-direction:row;gap:4px}
  .rg-zb{min-width:40px;min-height:40px;border-radius:10px}
  .rg-zb.is-fit{font-size:.75rem;padding:0 8px}
  .rg-ohint{top:auto;bottom:10px;max-width:calc(100% - 20px)}
}

/* 4 Nov 2026: THE BRANCH CHIPS over the chart, the legend's key star and second seat, FULL SCREEN, the card's "as of" line,
   and THE POWER QUIZ (regime.js). Tap targets 40px and up, text 12px and up, nothing hidden and then animated in. */
.rg-oh{row-gap:var(--s2)}
.rg-grp{display:flex;gap:4px;overflow-x:auto;max-width:100%;padding:2px;flex:1 1 100%}
.rg-gb{flex:none;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font:700 .85rem/1 var(--body,inherit);cursor:pointer;white-space:nowrap}
.rg-gb:hover{border-color:var(--dim)}
.rg-gb.is-on{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.rg-gb:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-legend .lg-key::before,.rg-legend .lg-al::before{display:none}
.rg-legend .lg-key{display:inline-flex;align-items:center;gap:6px}
.rg-legend .lg-al{padding:0 8px;border:1px dashed var(--dim);border-radius:6px}
.rg-fsb{display:inline-flex;align-items:center;justify-content:center}
.rg-fsb svg{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.rg-fsb .rg-fs-out,.rg-fsb[aria-pressed=true] .rg-fs-in{display:none}
.rg-fsb[aria-pressed=true] .rg-fs-out{display:inline}
html.rg-fs-lock{overflow:hidden}
html.rg-fs-lock body{overflow:hidden}
.rg-org.is-fs{position:fixed;inset:0;z-index:2147483000;margin:0;display:flex;flex-direction:column;gap:var(--s2);
  padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:var(--bg);overflow:hidden}
.rg-org.is-fs .rg-ov{flex:1 1 auto;height:auto;min-height:0;margin-top:0}
.rg-org.is-fs .rg-onote{display:none}
.rg-org.is-fs .rg-legend{font-size:.75rem}
.rg-org:fullscreen{width:100%;height:100%}
.rg-org.is-fs .rg-sheet{z-index:2147483001}
.rg-sh-ao{margin-top:var(--s2);font-size:.78rem;color:var(--dim)}
.rg-sh-ao::before{content:"✓ ";color:#2FA36B;font-weight:800}
.rg-sh-ao.is-un::before{content:"! ";color:var(--rg-unk)}
.rg-sh-fix{display:inline-flex;align-items:center;min-height:40px;margin-top:var(--s2);font-size:.85rem;font-weight:700;color:var(--field)}
.rg-quiz{margin-top:var(--s4);max-width:760px}
.rg-qz-h h2{margin:0}
.rg-qz-b{margin-top:var(--s4)}
.rg-qz-top{position:relative;display:flex;justify-content:space-between;gap:var(--s3);padding-bottom:10px;font-size:.85rem;font-weight:700;color:var(--dim)}
.rg-qz-car{position:absolute;inset-inline:0;bottom:0;height:4px;border-radius:2px;background:var(--line);overflow:hidden}
.rg-qz-car::after{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:var(--q,0%);background:var(--field)}
.rg-qz-q{margin:var(--s4) 0 var(--s3);font-size:1.25rem;line-height:1.25}
.rg-qz-o{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
.rg-qz-o.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.rg-qz-c{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:44px;padding:var(--s3) 8px;border-radius:var(--r2);border:2px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;text-align:center;cursor:pointer}
.rg-qz-c:hover{border-color:var(--dim)}
.rg-qz-c:focus-visible{outline:2px solid var(--field);outline-offset:2px}
.rg-qz-c b{font-size:.9rem;line-height:1.2}
.rg-qz-c span:not(.rg-face):not(.rg-ini){font-size:.75rem;line-height:1.25;color:var(--dim)}
.rg-qz-c .rg-face{width:72px;height:72px}
.rg-qz-o.is-done .rg-qz-c{cursor:default}
.rg-qz-o:not(.is-done) .rg-x,.rg-qz-o:not(.is-done) .rg-q,.rg-qz-o:not(.is-done) .rg-qz-after{display:none}      /* no fate mark before the answer: it would give it away */
.rg-qz-c.is-ok{border-color:#2FA36B;background:color-mix(in srgb,#2FA36B 14%,var(--panel))}
.rg-qz-c.is-no{border-color:var(--rg-kill);background:color-mix(in srgb,var(--rg-kill) 14%,var(--panel))}
.rg-qz-note{margin-top:var(--s3)}
.rg-qz-v{font-weight:800;font-size:1.05rem}.rg-qz-v.is-ok{color:#2FA36B}.rg-qz-v.is-no{color:var(--rg-kill)}
.rg-qz-why{margin-top:6px;color:var(--ink)}
.rg-qz-acts{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;margin-top:var(--s3)}
.rg-qz-acts a{display:inline-flex;align-items:center;min-height:40px;font-size:.8rem;color:var(--dim)}
.rg-qz-score{font:800 3rem/1 var(--display,inherit);color:var(--field)}
.rg-qz-end{margin-top:var(--s2);font-size:1.05rem}
@media(max-width:480px){
  .rg-qz-o.is-3{gap:6px}
  .rg-qz-c{padding:10px 4px}
  .rg-qz-c .rg-face{width:56px;height:56px}
  .rg-qz-q{font-size:1.1rem}
}
@media(max-width:700px){      /* five tabs since the quiz (4 Nov 2026): two rows on a phone, never a tab under 40px wide */
  .rg-tabs{flex-wrap:wrap;border-radius:20px}
  .rg-tab{flex:1 1 30%;min-width:88px}
}
