@font-face {
    font-family: 'Mecano NP Sans';
    src: url("/w/skins/csi_kameleon/fonts/MecanoNPsans.otf") format("opentype");
}
.smap { text-align: center; font-family: 'Mecano NP Sans'; font-size: 1.6rem; font-weight: 500; line-height: 1.8rem; }
.smap.busy { cursor: wait; }
.smap header { font-size: 1.8rem; letter-spacing: 0.15rem; }
.smap .toolbar { height: 2rem; }
.smap .toolbar nav span { display: inline-block; color: #779F2E; padding: 0 4px; margin: 0; font-weight: 500; }
.smap .toolbar nav span a { text-decoration: none; color: #779F2E; }
.smap .toolbar nav span.selected  { text-decoration: underline; }
.smap .toolbar nav span.selected a { color: black; text-decoration: underline 3px #779F2E; }
.smap .toolbar nav span:hover { cursor: pointer; }
.smap h3 { font-size: 1.8rem; font-weight: 500; }
.smap svg { width: 100%; height: calc(100% - 4rem); }
.smap path { fill:#e3e4e5; fill-opacity:1; fill-rule:nonzero; stroke:none; stroke-width:0.223197; }
.smap .shade1 { fill:#bbc; }
.smap .shade2 { fill:#aab; }
.smap .shade3 { fill:#889; }
.smap .shade4 { fill:#778; }
.smap path.selected { fill:#529DBA !important; }
.smap path.highlighted { fill:#779F2E !important; }
.smap svg > g { transition: transform 0.4s ease; }
.smap svg.zoom-europe > g { transform: scale(4) translate(-88px, -12px); }
.smap svg.zoom-asia > g { transform: scale(2.2) translate(-116px, -18px); }
.smap svg.zoom-eurasia > g { transform: scale(2.2) translate(-116px, -18px); }
.smap svg.zoom-africa > g { transform: scale(2) translate(-57px, -34px); }
.smap svg.zoom-australia > g { transform: scale(2) translate(-57px, -34px); }
.smap svg.zoom-north-america > g { transform: scale(3) translate(-4px, -21px); }
.smap svg.zoom-south-america > g { transform: scale(2) translate(1px, -54px); }
.smap svg.zoom-oceania > g { transform: scale(2) translate(-121px, -45px); }
