@font-face { font-family: "EB Garamond"; font-style: normal; font-weight: 400 800; font-display: swap; src: url("fonts/EBGaramond.woff2") format("woff2"); }
@font-face { font-family: "Source Serif 4"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("fonts/source-serif-4-normal-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Source Serif 4"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("fonts/source-serif-4-normal-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Source Serif 4"; font-style: italic; font-weight: 400 700; font-display: swap; src: url("fonts/source-serif-4-italic-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Source Serif 4"; font-style: italic; font-weight: 400 700; font-display: swap; src: url("fonts/source-serif-4-italic-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 300 800; font-display: swap; src: url("fonts/AtkinsonHyperlegibleNext.woff2") format("woff2"); }

:root {
  --paper: #f4eee1;
  --paper-2: #ebe2cf;
  --card: #faf6ed;
  --card-edge: #d9ccb2;
  --ink: #1f1a14;
  --ink-2: #3e352b;
  --ink-3: #54483b;
  --accent: #8a2a1b;
  --link: #7d2617;
  --pin: #a3231a;
  --thread: #8a2a1b;
  --halo: rgba(247, 242, 230, 0.93);
  --route: #6b4516;
  --front: #9b1c1c;
  --event: #b0301d;
  --dot: #2b2118;
  --area: rgba(120, 90, 50, 0.14);
  --topbar: rgba(244, 238, 225, 0.97);
  --shadow: 0 1px 2px rgba(60, 40, 20, .08), 0 8px 28px rgba(60, 40, 20, .12);
  --serif: "Source Serif 4", Georgia, serif;
  --display: "EB Garamond", Garamond, Georgia, serif;
  --sans: "Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", sans-serif;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --paper: #15171a; --paper-2: #1c1f23; --card: #1b1e22; --card-edge: #3a3a38;
    --ink: #f0e8da; --ink-2: #d9cfbf; --ink-3: #c7bba8;
    --accent: #eca184; --link: #f2ad91; --pin: #ff8f70; --thread: #f3a88b;
    --halo: rgba(22, 24, 27, 0.9); --route: #e6c07f; --front: #ff7d6e; --event: #ff8b6c; --dot: #f1e6d3;
    --area: rgba(230, 200, 150, 0.12); --topbar: rgba(21, 23, 26, 0.96);
    --shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .35);
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --paper: #15171a; --paper-2: #1c1f23; --card: #1b1e22; --card-edge: #3a3a38;
  --ink: #f0e8da; --ink-2: #d9cfbf; --ink-3: #c7bba8;
  --accent: #eca184; --link: #f2ad91; --pin: #ff8f70; --thread: #f3a88b;
  --halo: rgba(22, 24, 27, 0.9); --route: #e6c07f; --front: #ff7d6e; --event: #ff8b6c; --dot: #f1e6d3;
  --area: rgba(230, 200, 150, 0.12); --topbar: rgba(21, 23, 26, 0.96);
  --shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .35);
  color-scheme: dark;
}

* { box-sizing: border-box; }
html { scroll-padding-top: 64px; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 1.08rem/1.6 var(--serif); }
a { color: var(--link); text-underline-offset: .15em; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; border-radius: 3px; }
img { max-width: 100%; height: auto; }
.skip { position: absolute; left: -999px; top: 0; }
.skip:focus { left: 8px; top: 8px; z-index: 100; background: var(--card); padding: .4rem .7rem; }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---- topbar ---- */
.topbar { position: fixed; top: 0; left: 0; right: 0; z-index: 40; height: 48px; display: flex; align-items: center; gap: .9rem; padding: 0 .9rem; background: var(--topbar); border-bottom: 1px solid var(--card-edge); font: 500 .9rem/1 var(--sans); }
.topbar .home { color: var(--ink); text-decoration: none; font-weight: 700; white-space: nowrap; }
.topnav { display: flex; gap: 1rem; overflow-x: auto; scrollbar-width: none; min-width: 0; }
.topnav::-webkit-scrollbar { display: none; }
.topnav a { color: var(--ink-2); text-decoration: none; white-space: nowrap; padding: .3rem 0; }
.topnav a:hover, .topnav a[aria-current="true"] { color: var(--ink); text-decoration: underline; text-decoration-thickness: 2px; }
.spacer { flex: 1; }
.chip { color: var(--ink); border: 1px solid var(--card-edge); border-radius: 999px; padding: .32rem .7rem; text-decoration: none; white-space: nowrap; }
.icon-btn { width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--card-edge); background: transparent; color: var(--ink); display: grid; place-items: center; cursor: pointer; flex: none; }
.icon-btn svg { display: block; }
.icon-btn svg[hidden] { display: none; }

/* ---- map ---- */
#map { position: fixed; inset: 0; width: 100vw; height: 100vh; height: 100lvh; z-index: 0; display: block; background: var(--paper-2); }
.map-failed #map, .no-js #map { display: none; }
.hud { position: fixed; z-index: 20; right: 1rem; top: 60px; display: flex; flex-direction: column; align-items: flex-end; gap: .35rem; pointer-events: none; max-width: min(420px, 60vw); }
.hud-year { font: 600 clamp(2rem, 4.2vw, 3.4rem)/1 var(--display); color: var(--ink); text-shadow: 0 0 6px var(--halo), 0 0 14px var(--halo); letter-spacing: .01em; }
.hud-tier { font: 600 .74rem/1.2 var(--sans); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-2); background: var(--card); border: 1px solid var(--card-edge); padding: .25rem .55rem; border-radius: 4px; }
.hud-town { font: 500 .88rem/1.35 var(--sans); color: var(--ink); background: var(--card); border: 1px solid var(--card-edge); border-left: 4px solid var(--pin); padding: .45rem .65rem; border-radius: 4px; box-shadow: var(--shadow); text-align: left; }
.hud-town b { color: var(--pin); }
.no-js .hud, .map-failed .hud { display: none; }

/* ---- story ---- */
main { position: relative; z-index: 10; }
.story { width: min(40vw, 520px); margin-left: clamp(1rem, 3vw, 2.5rem); padding: 0 0 30vh; }
.hero { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; justify-content: center; padding: 80px 0 40px; }
.hero .card { padding: 1.6rem 1.6rem 1.4rem; }
.kicker { font: 700 .76rem/1.2 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--accent); margin: 0 0 .7rem; }
h1 { font: 600 clamp(2.2rem, 4.6vw, 3.6rem)/1.04 var(--display); margin: 0 0 .9rem; letter-spacing: -.005em; text-wrap: balance; }
.deck { font-size: 1.14rem; color: var(--ink-2); margin: 0 0 1.2rem; }
.card { background: var(--card); border: 1px solid var(--card-edge); border-radius: 6px; box-shadow: var(--shadow); }

.picker label { display: block; font: 700 .95rem/1.3 var(--sans); margin-bottom: .45rem; }
.picker .row { position: relative; display: flex; gap: .5rem; }
.picker input { flex: 1; min-width: 0; font: 500 1.05rem/1.2 var(--sans); padding: .7rem .8rem; border: 1.5px solid var(--ink-3); border-radius: 5px; background: var(--paper); color: var(--ink); }
.picker ul { position: absolute; z-index: 30; left: 0; right: 0; top: calc(100% + 4px); list-style: none; margin: 0; padding: .25rem; background: var(--card); border: 1px solid var(--card-edge); border-radius: 5px; box-shadow: var(--shadow); max-height: 50vh; overflow: auto; }
.picker li { padding: .55rem .6rem; border-radius: 4px; cursor: pointer; font: 500 1rem/1.25 var(--sans); }
.picker li span { color: var(--ink-3); font-size: .86rem; }
.picker li[aria-selected="true"], .picker li:hover { background: var(--paper-2); }
.picker .status { font: 500 .9rem/1.4 var(--sans); color: var(--ink-2); margin: .55rem 0 0; min-height: 1.3em; }
.hero .credit { font: 400 .84rem/1.45 var(--sans); color: var(--ink-3); margin: .9rem 0 0; border-top: 1px solid var(--card-edge); padding-top: .6rem; }
.begin { display: inline-block; margin-top: 1rem; font: 700 .95rem/1 var(--sans); color: var(--link); }
.no-js .picker { display: none; }

.era { padding-top: 30vh; }
.era-head { padding: 1.1rem 1.3rem; margin-bottom: 40vh; }
.era-head .span { font: 600 .8rem/1 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--accent); margin: 0 0 .4rem; }
.era-head h2 { font: 600 clamp(1.7rem, 3vw, 2.3rem)/1.1 var(--display); margin: 0 0 .4rem; }
.era-head p { margin: 0; color: var(--ink-2); }
.ch { padding: 1.2rem 1.35rem 1.1rem; margin: 0 0 62vh; scroll-margin-top: 30vh; transition: border-color .3s; }
.ch.on { border-color: var(--ink-3); }
.ch .when { font: 700 .82rem/1 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: var(--accent); margin: 0 0 .45rem; }
.ch h3 { font: 600 1.55rem/1.15 var(--display); margin: 0 0 .6rem; text-wrap: balance; }
.ch h3 a.anchor { color: inherit; text-decoration: none; }
.ch h3 a.anchor:hover { text-decoration: underline; }
.ch p { margin: 0 0 .75rem; }
.ch .you { font: 500 .95rem/1.45 var(--sans); background: var(--paper-2); border-left: 4px solid var(--pin); padding: .5rem .65rem; border-radius: 3px; }
.ch .you b { color: var(--pin); }
.ch .onmap { font: 500 .88rem/1.45 var(--sans); color: var(--ink-2); border-top: 1px solid var(--card-edge); padding-top: .6rem; margin-top: .8rem; }
.ch .onmap summary { cursor: pointer; font-weight: 700; color: var(--ink); }
.ch .onmap ul { margin: .4rem 0 0; padding-left: 1.1rem; }
.ch .onmap li { margin: .2rem 0; }
.ch .onmap .src { color: var(--ink-3); }
.ch figure { margin: .9rem 0 .6rem; }
.ch figure img { display: block; width: 100%; height: auto; border-radius: 3px; border: 1px solid var(--card-edge); }
.ch figcaption { font: 400 .82rem/1.4 var(--sans); color: var(--ink-3); margin-top: .35rem; }
.ch .more { font: 400 .86rem/1.45 var(--sans); color: var(--ink-3); margin: .7rem 0 0; }
.ch .more a { color: var(--link); }
.ch .tools { display: flex; gap: .6rem; align-items: center; margin-top: .7rem; }
.share-ch { font: 700 .82rem/1 var(--sans); color: var(--ink); background: transparent; border: 1px solid var(--card-edge); border-radius: 999px; padding: .45rem .75rem; cursor: pointer; min-height: 36px; }
.no-js .share-ch { display: none; }
.ch noscript img, .ch .still { display: block; width: 100%; border-radius: 3px; margin: .6rem 0; }
.js .ch .still { display: none; }

/* ---- after the map ---- */
.after { position: relative; z-index: 12; background: var(--paper); border-top: 1px solid var(--card-edge); }
.block { max-width: 760px; margin: 0 auto; padding: 4rem 1.2rem 2rem; }
.block.wide { max-width: 1100px; }
.block h2 { font: 600 clamp(1.8rem, 3.4vw, 2.5rem)/1.1 var(--display); margin: 0 0 1rem; }
.block h2 a.anchor { color: inherit; text-decoration: none; }
.line-head { font-size: 1.2rem; }
ol.line { list-style: none; padding: 0; margin: 1rem 0; border-left: 3px solid var(--card-edge); }
ol.line li { position: relative; padding: .5rem 0 .5rem 1.3rem; }
ol.line li::before { content: ""; position: absolute; left: -9px; top: .85rem; width: 15px; height: 15px; border-radius: 50%; background: var(--c); border: 2px solid var(--paper); }
ol.line .yrs { font: 700 .92rem/1 var(--sans); color: var(--ink-2); }
ol.line .cap, ol.line .suz { display: block; font: 400 .9rem/1.4 var(--sans); color: var(--ink-3); }
.btn { font: 700 .95rem/1 var(--sans); color: var(--paper); background: var(--ink); border: 0; border-radius: 999px; padding: .75rem 1.1rem; cursor: pointer; min-height: 44px; }
.examples { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1rem; margin: 1.2rem 0; }
.examples section { background: var(--card); border: 1px solid var(--card-edge); border-radius: 6px; padding: .9rem 1rem; }
.examples h3 { font: 600 1.25rem/1.1 var(--display); margin: 0 0 .4rem; }
.examples ol { margin: 0; padding-left: 1.1rem; font: 400 .9rem/1.45 var(--sans); }
table.chrono { width: 100%; border-collapse: collapse; font: 400 .92rem/1.4 var(--sans); }
table.chrono th, table.chrono td { text-align: left; padding: .5rem .4rem; border-bottom: 1px solid var(--card-edge); vertical-align: top; }
table.chrono th { font-weight: 700; color: var(--ink-2); }
table.chrono tr.later { display: none; }
.years { display: flex; flex-wrap: wrap; gap: .35rem .5rem; padding: 0; list-style: none; font: 600 .9rem/1 var(--sans); }
.years a { display: inline-block; padding: .45rem .6rem; border: 1px solid var(--card-edge); border-radius: 4px; text-decoration: none; color: var(--ink); background: var(--card); }
.srcs { font: 400 .9rem/1.5 var(--sans); padding-left: 1.2rem; }
.srcs li { margin: .35rem 0; }
.method p { font-size: 1rem; }
.legend { display: flex; flex-wrap: wrap; gap: .5rem 1rem; font: 500 .9rem/1.3 var(--sans); padding: 0; list-style: none; }
.legend li { display: flex; align-items: center; gap: .45rem; }
.legend .hatch i { background: repeating-linear-gradient(135deg, var(--ink-3) 0 2px, transparent 2px 6px); }
.legend i { width: 18px; height: 12px; border-radius: 2px; background: var(--c); border: 1px solid var(--card-edge); }
footer { position: relative; z-index: 12; background: var(--paper); border-top: 1px solid var(--card-edge); padding: 2rem 1.2rem 3rem; font: 400 .9rem/1.5 var(--sans); color: var(--ink-2); text-align: center; }

/* ---- rail ---- */
.rail { position: fixed; right: .7rem; top: 50%; transform: translateY(-50%); z-index: 30; display: flex; flex-direction: column; gap: .1rem; }
.rail a { display: flex; align-items: center; justify-content: flex-end; gap: .45rem; text-decoration: none; color: var(--ink); font: 600 .78rem/1 var(--sans); min-height: 26px; }
.rail a span { opacity: 0; transform: translateX(6px); transition: opacity .2s, transform .2s; background: var(--card); border: 1px solid var(--card-edge); padding: .2rem .5rem; border-radius: 4px; white-space: nowrap; }
.rail a:hover span, .rail a:focus-visible span, .rail a.on span { opacity: 1; transform: none; }
.rail i { width: 10px; height: 10px; border-radius: 50%; border: 1.5px solid var(--ink-2); background: var(--card); flex: none; transition: transform .2s, background .2s; }
.rail a.on i { background: var(--accent); border-color: var(--accent); transform: scale(1.3); }
.no-js .rail { display: none; }

/* ---- no map: the story reads as an article ---- */
.no-js .story, .map-failed .story { width: auto; max-width: 760px; margin: 0 auto; padding: 0 1rem 4rem; }
.no-js .ch, .map-failed .ch, .no-js .era-head, .map-failed .era-head { margin-bottom: 1.5rem; }
.no-js .era, .map-failed .era { padding-top: 2rem; }
.no-js .hero, .map-failed .hero { min-height: 0; padding-top: 80px; }
.map-failed .js-map-note { display: block; }
.js-map-note { display: none; }

/* ---- phones: map in the upper half, the cards scroll over the lower half ---- */
@media (max-width: 899px) {
  .topbar { gap: .6rem; padding: 0 .6rem; }
  .topbar .home { font-size: .82rem; }
  .story { width: auto; margin: 0 .6rem; }
  .hero { justify-content: flex-start; padding-top: 42vh; padding-top: 42svh; padding-bottom: 6vh; }
  .hero .card { padding: 1.2rem 1.1rem 1.1rem; }
  h1 { font-size: clamp(2rem, 8.4vw, 2.6rem); }
  .deck { font-size: 1.04rem; }
  .era { padding-top: 55vh; }
  .era-head { margin-bottom: 55vh; }
  .ch { margin-bottom: 65vh; scroll-margin-top: 52vh; }
  .ch h3 { font-size: 1.36rem; }
  .hud { top: 54px; right: .6rem; max-width: calc(100vw - 1.2rem); }
  .hud-year { font-size: 1.9rem; }
  .hud-town { display: none; }
  .rail { display: none; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* ---- social card mode (1200×630 renders of one chapter) ---- */
.cardmode body { overflow: hidden; }
.cardmode .topbar, .cardmode .hud, .cardmode main, .cardmode .after, .cardmode footer, .cardmode .rail { display: none !important; }
.cardband { position: fixed; z-index: 50; left: 0; top: 0; bottom: 0; width: 47%; padding: 54px 36px 44px 56px; display: flex; flex-direction: column; justify-content: center;
  background: linear-gradient(90deg, var(--paper) 0%, var(--paper) 80%, transparent 100%); }
.cb-year { font: 600 64px/1 var(--display); color: var(--accent); margin: 0 0 18px; }
.cb-title { font: 600 44px/1.08 var(--display); color: var(--ink); margin: 0 0 26px; text-wrap: balance; }
.cb-site { font: 700 17px/1.2 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--ink-2); margin: 0; }

.can-grab, .can-grab body { cursor: grab; }
.dragging, .dragging * { cursor: grabbing !important; user-select: none; }

/* polity colours (generated by build.py) */
.pol-dacia-kingdom{--c:rgb(138,104,66)}.pol-rome{--c:rgb(176,58,58)}.pol-byzantium{--c:rgb(122,79,154)}.pol-hungary-kingdom{--c:rgb(63,111,176)}.pol-transylvania-principality{--c:rgb(46,139,135)}.pol-wallachia{--c:rgb(212,145,42)}.pol-moldavia{--c:rgb(168,70,106)}.pol-ottoman{--c:rgb(111,143,47)}.pol-crimean-khanate{--c:rgb(143,122,58)}.pol-habsburg{--c:rgb(140,127,184)}.pol-austria-hungary{--c:rgb(140,127,184)}.pol-russia{--c:rgb(181,86,63)}.pol-united-principalities{--c:rgb(201,162,39)}.pol-romania{--c:rgb(201,162,39)}.pol-bulgaria{--c:rgb(58,165,138)}.pol-hungary{--c:rgb(63,111,176)}.pol-ussr{--c:rgb(194,65,58)}.pol-ukraine{--c:rgb(63,159,208)}.pol-moldova{--c:rgb(142,95,181)}.pol-poland{--c:rgb(190,90,120)}.pol-serbia{--c:rgb(120,100,160)}.pol-golden-horde{--c:rgb(150,120,70)}.pol-hungary-kingdom-east{--c:rgb(70,130,160)}.pol-bulgaria-first{--c:rgb(74,150,110)}.pol-dobruja-despotate{--c:rgb(150,110,150)}.pol-moldavian-democratic-republic{--c:rgb(168,96,150)}.pol-thrace-client-kingdom{--c:rgb(130,110,90)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .pol-dacia-kingdom{--c:rgb(196,160,118)}:root:not([data-theme="light"]) .pol-rome{--c:rgb(226,116,110)}:root:not([data-theme="light"]) .pol-byzantium{--c:rgb(182,142,214)}:root:not([data-theme="light"]) .pol-hungary-kingdom{--c:rgb(120,164,222)}:root:not([data-theme="light"]) .pol-transylvania-principality{--c:rgb(96,196,190)}:root:not([data-theme="light"]) .pol-wallachia{--c:rgb(236,178,92)}:root:not([data-theme="light"]) .pol-moldavia{--c:rgb(222,128,162)}:root:not([data-theme="light"]) .pol-ottoman{--c:rgb(164,196,98)}:root:not([data-theme="light"]) .pol-crimean-khanate{--c:rgb(200,180,112)}:root:not([data-theme="light"]) .pol-habsburg{--c:rgb(186,176,226)}:root:not([data-theme="light"]) .pol-austria-hungary{--c:rgb(186,176,226)}:root:not([data-theme="light"]) .pol-russia{--c:rgb(232,142,118)}:root:not([data-theme="light"]) .pol-united-principalities{--c:rgb(232,202,96)}:root:not([data-theme="light"]) .pol-romania{--c:rgb(232,202,96)}:root:not([data-theme="light"]) .pol-bulgaria{--c:rgb(104,208,180)}:root:not([data-theme="light"]) .pol-hungary{--c:rgb(120,164,222)}:root:not([data-theme="light"]) .pol-ussr{--c:rgb(240,120,110)}:root:not([data-theme="light"]) .pol-ukraine{--c:rgb(118,196,236)}:root:not([data-theme="light"]) .pol-moldova{--c:rgb(192,150,226)}:root:not([data-theme="light"]) .pol-poland{--c:rgb(230,150,176)}:root:not([data-theme="light"]) .pol-serbia{--c:rgb(176,160,214)}:root:not([data-theme="light"]) .pol-golden-horde{--c:rgb(206,178,122)}:root:not([data-theme="light"]) .pol-hungary-kingdom-east{--c:rgb(124,182,210)}:root:not([data-theme="light"]) .pol-bulgaria-first{--c:rgb(124,200,160)}:root:not([data-theme="light"]) .pol-dobruja-despotate{--c:rgb(200,160,200)}:root:not([data-theme="light"]) .pol-moldavian-democratic-republic{--c:rgb(214,150,196)}:root:not([data-theme="light"]) .pol-thrace-client-kingdom{--c:rgb(190,170,150)}}
:root[data-theme="dark"] .pol-dacia-kingdom{--c:rgb(196,160,118)}:root[data-theme="dark"] .pol-rome{--c:rgb(226,116,110)}:root[data-theme="dark"] .pol-byzantium{--c:rgb(182,142,214)}:root[data-theme="dark"] .pol-hungary-kingdom{--c:rgb(120,164,222)}:root[data-theme="dark"] .pol-transylvania-principality{--c:rgb(96,196,190)}:root[data-theme="dark"] .pol-wallachia{--c:rgb(236,178,92)}:root[data-theme="dark"] .pol-moldavia{--c:rgb(222,128,162)}:root[data-theme="dark"] .pol-ottoman{--c:rgb(164,196,98)}:root[data-theme="dark"] .pol-crimean-khanate{--c:rgb(200,180,112)}:root[data-theme="dark"] .pol-habsburg{--c:rgb(186,176,226)}:root[data-theme="dark"] .pol-austria-hungary{--c:rgb(186,176,226)}:root[data-theme="dark"] .pol-russia{--c:rgb(232,142,118)}:root[data-theme="dark"] .pol-united-principalities{--c:rgb(232,202,96)}:root[data-theme="dark"] .pol-romania{--c:rgb(232,202,96)}:root[data-theme="dark"] .pol-bulgaria{--c:rgb(104,208,180)}:root[data-theme="dark"] .pol-hungary{--c:rgb(120,164,222)}:root[data-theme="dark"] .pol-ussr{--c:rgb(240,120,110)}:root[data-theme="dark"] .pol-ukraine{--c:rgb(118,196,236)}:root[data-theme="dark"] .pol-moldova{--c:rgb(192,150,226)}:root[data-theme="dark"] .pol-poland{--c:rgb(230,150,176)}:root[data-theme="dark"] .pol-serbia{--c:rgb(176,160,214)}:root[data-theme="dark"] .pol-golden-horde{--c:rgb(206,178,122)}:root[data-theme="dark"] .pol-hungary-kingdom-east{--c:rgb(124,182,210)}:root[data-theme="dark"] .pol-bulgaria-first{--c:rgb(124,200,160)}:root[data-theme="dark"] .pol-dobruja-despotate{--c:rgb(200,160,200)}:root[data-theme="dark"] .pol-moldavian-democratic-republic{--c:rgb(214,150,196)}:root[data-theme="dark"] .pol-thrace-client-kingdom{--c:rgb(190,170,150)}
