@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:light;--paper:#f3f0e7;--ink:#153ac3;--orange:#ed572c;--line:#183bbc42;--muted:#575e73;--map:#e7e5db}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px 'DM Sans',sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}[hidden]{display:none!important}header{display:flex;align-items:center;margin:0 4%;padding:24px 0 20px;border-bottom:3px solid var(--ink);gap:26px}.brand{font:800 62px/.85 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;color:var(--ink);text-decoration:none}.brand span{vertical-align:top;font:16px 'DM Sans';margin-left:5px}.masthead,.edition{font:12px/1.5 'DM Mono',monospace;letter-spacing:.5px}.edition{margin-left:auto;text-align:right}nav{display:flex;margin:0 4%;border-bottom:1px solid var(--ink)}nav button{position:relative;background:transparent;border:0;border-right:1px solid var(--line);padding:19px 28px;color:var(--ink);font-weight:600;font-size:16px}nav button:first-child{border-left:1px solid var(--line)}nav button span{font:12px 'DM Mono',monospace;margin-right:18px}nav button[aria-pressed=true]{background:var(--ink);color:var(--paper)}nav button:hover:not([aria-pressed=true]){background:#153ac30c}main{padding:0 4%}.headline{display:flex;justify-content:space-between;align-items:center;padding:30px 0 27px;gap:20px}.eyebrow{font:12px 'DM Mono',monospace;letter-spacing:1px}.headline .eyebrow{margin:0 0 8px}h1{font:700 clamp(52px,7.5vw,112px)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-1px;margin:0}h1 em{font-style:normal;color:var(--orange)}.tally{display:flex;align-items:center;gap:18px;padding-right:8px}.tally strong{font:600 88px/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;font-variant-numeric:tabular-nums}.tally span{font:12px/1.6 'DM Mono',monospace;max-width:105px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.cartography{min-width:0;border-right:1px solid var(--ink);padding:18px 24px 14px 0}.map-top{display:flex;justify-content:space-between;gap:15px;font:12px 'DM Mono',monospace}.map-top span:last-child{color:var(--muted)}#map{position:relative;height:440px;margin-top:12px;background:var(--map);overflow:hidden}#world{height:100%;width:100%;touch-action:none;cursor:grab}#world:active{cursor:grabbing}.country{stroke:var(--paper);stroke-width:.7;vector-effect:non-scaling-stroke;transition:fill .25s;cursor:pointer}.country:hover,.country:focus{stroke:var(--ink);stroke-width:1.5;filter:brightness(.9);outline:none}.graticule{fill:none;stroke:var(--ink);stroke-width:.5;opacity:.13;pointer-events:none}.state-label{font:12px 'DM Mono',monospace;fill:var(--paper);pointer-events:none;text-anchor:middle;paint-order:stroke;stroke:#173bc3;stroke-width:2px}#hover-label{position:absolute;bottom:16px;left:16px;background:var(--paper);padding:7px 10px;font:13px 'DM Mono',monospace;pointer-events:none;border:1px solid var(--ink);display:none}#loading{position:absolute;inset:0;display:grid;place-items:center;background:var(--map);font:14px 'DM Mono',monospace}.map-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:16px}#legend{display:flex;gap:18px;flex-wrap:wrap;font-size:12px}#legend span{display:flex;gap:7px;align-items:center}#legend i{width:10px;height:10px;display:block}.map-tools{display:flex;gap:5px}.map-tools button{border:1px solid var(--ink);background:transparent;color:var(--ink);height:33px;width:33px;font-size:22px}.map-tools button:hover{background:var(--ink);color:var(--paper)}.map-instruction{font:12px/1.6 'DM Mono',monospace;color:var(--muted);margin:13px 0 0}aside{padding:20px 0 22px 26px}h2{font-size:17px;margin:0 0 20px;letter-spacing:-.4px}h2>span{font:12px 'DM Mono',monospace;margin-right:8px}.document{display:flex;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);cursor:pointer}.document input{appearance:none;width:18px;height:18px;border:1px solid var(--ink);border-radius:0;margin:0;flex-shrink:0;background:transparent}.document input:checked{background:var(--ink);box-shadow:inset 0 0 0 3px var(--paper)}.document span{font-size:15px}.document small{display:block;font:12px 'DM Mono',monospace;color:var(--muted);margin-top:5px;letter-spacing:.4px}.document b{margin-left:auto;font:12px 'DM Mono',monospace}.note{font-size:12px;line-height:1.65;color:var(--muted)}.detail{border-top:1px solid var(--ink);padding-top:17px;margin-top:25px}.detail h3{font:600 28px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:10px 0}#country-detail{font-size:14px;line-height:1.6;color:var(--muted)}.detail-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:5px 0;font-size:12px}.stamp{border:2px solid var(--orange);color:var(--orange);transform:rotate(-7deg);display:table;margin:30px auto 5px;padding:9px 18px;text-align:center}.stamp span{display:block;font:12px 'DM Mono',monospace;letter-spacing:1px}.stamp strong{font:700 30px 'Barlow Condensed',sans-serif;display:block;line-height:1.1}.aside-intro{font-size:16px;line-height:1.6}.progress-track{height:7px;background:#153ac320;margin-top:25px}#progress{height:100%;background:var(--orange);transition:width .4s}#save-status{font:12px/1.6 'DM Mono',monospace;color:var(--ink);border-top:1px dashed var(--line);padding-top:14px}.index{padding:28px 0 36px}.index-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.index h2{font:600 30px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0}.search{position:relative;display:flex;align-items:center;border-bottom:1px solid var(--ink);width:280px}.search input{min-width:0;width:100%;border:0;color:var(--ink);background:transparent;padding:9px 24px 9px 0;font-size:16px;border-radius:0}.search span:last-child{position:absolute;right:0;font-size:25px;pointer-events:none}#place-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px;max-height:290px;overflow:auto;padding:0 8px 4px 0}.place{display:flex;align-items:center;gap:9px;text-align:left;min-height:43px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font-size:14px}.place:hover{color:var(--orange)}.place.selected{color:var(--orange)}.place .box{width:14px;height:14px;border:1px solid currentColor;flex-shrink:0}.place.selected .box{background:var(--orange);box-shadow:inset 0 0 0 2px var(--paper)}.place .dot{width:7px;height:7px;flex-shrink:0}.empty{grid-column:1/-1;color:var(--muted)}footer{border-top:3px solid var(--ink);margin:0 4%;padding:20px 0 28px;display:flex;justify-content:space-between;gap:20px;font:12px/1.6 'DM Mono',monospace}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1600px){main,header,nav,footer{max-width:1540px;margin-left:auto;margin-right:auto}main{padding:0}#map{height:550px}}@media(max-width:1050px){.workspace{grid-template-columns:minmax(0,1fr) 255px}aside{padding-left:20px}.cartography{padding-right:20px}#map{height:370px}.map-top span:last-child{display:none}#place-list{grid-template-columns:repeat(3,minmax(0,1fr))}.tally strong{font-size:68px}}@media(max-width:720px){header{padding:20px 0}.brand{font-size:49px}.masthead{font-size:12px}.edition{display:none}nav button{flex:1;padding:15px 8px;font-size:14px}nav button span{display:block;margin:0 0 4px;font-size:12px}.headline{padding:26px 0}.headline .eyebrow{font-size:12px}h1{font-size:52px}.tally{gap:7px;padding:0}.tally strong{font-size:54px}.tally span{font-size:12px;max-width:70px}.workspace{display:flex;flex-direction:column}.cartography{padding:14px 0;border-right:0}#map{height:330px}.map-top{font-size:12px}.map-bottom{align-items:flex-start}#legend{gap:9px;font-size:12px}aside{border-top:1px solid var(--ink);padding:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.detail{margin:0;padding-top:0;border:0}.stamp{display:none}.document span{font-size:14px}.document b{display:none}.index-heading{align-items:flex-start;flex-direction:column;gap:12px}.search{width:100%}#place-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px;max-height:350px}footer{flex-direction:column;gap:6px}.aside-intro{font-size:14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
