.flag-icon-background, .flag-icon {
  background-size: contain;
  background-position: 50%;
  background-repeat: no-repeat;
}

.flag-icon {
  position: relative;
  display: inline-block;
  width: 1.33333333em;
  line-height: 1em;
}

.flag-icon:before {
  content: '\A0';
}

.flag-icon.flag-icon-squared {
  width: 1em;
}

.flag-icon-ad {
  background-image: url(../flags/4x3/ad.svg);
}

.flag-icon-ad.flag-icon-squared {
  background-image: url(../flags/1x1/ad.svg);
}

.flag-icon-ae {
  background-image: url(../flags/4x3/ae.svg);
}

.flag-icon-ae.flag-icon-squared {
  background-image: url(../flags/1x1/ae.svg);
}

.flag-icon-af {
  background-image: url(../flags/4x3/af.svg);
}

.flag-icon-af.flag-icon-squared {
  background-image: url(../flags/1x1/af.svg);
}

.flag-icon-ag {
  background-image: url(../flags/4x3/ag.svg);
}

.flag-icon-ag.flag-icon-squared {
  background-image: url(../flags/1x1/ag.svg);
}

.flag-icon-ai {
  background-image: url(../flags/4x3/ai.svg);
}

.flag-icon-ai.flag-icon-squared {
  background-image: url(../flags/1x1/ai.svg);
}

.flag-icon-al {
  background-image: url(../flags/4x3/al.svg);
}

.flag-icon-al.flag-icon-squared {
  background-image: url(../flags/1x1/al.svg);
}

.flag-icon-am {
  background-image: url(../flags/4x3/am.svg);
}

.flag-icon-am.flag-icon-squared {
  background-image: url(../flags/1x1/am.svg);
}

.flag-icon-ao {
  background-image: url(../flags/4x3/ao.svg);
}

.flag-icon-ao.flag-icon-squared {
  background-image: url(../flags/1x1/ao.svg);
}

.flag-icon-aq {
  background-image: url(../flags/4x3/aq.svg);
}

.flag-icon-aq.flag-icon-squared {
  background-image: url(../flags/1x1/aq.svg);
}

.flag-icon-ar {
  background-image: url(../flags/4x3/ar.svg);
}

.flag-icon-ar.flag-icon-squared {
  background-image: url(../flags/1x1/ar.svg);
}

.flag-icon-as {
  background-image: url(../flags/4x3/as.svg);
}

.flag-icon-as.flag-icon-squared {
  background-image: url(../flags/1x1/as.svg);
}

.flag-icon-at {
  background-image: url(../flags/4x3/at.svg);
}

.flag-icon-at.flag-icon-squared {
  background-image: url(../flags/1x1/at.svg);
}

.flag-icon-au {
  background-image: url(../flags/4x3/au.svg);
}

.flag-icon-au.flag-icon-squared {
  background-image: url(../flags/1x1/au.svg);
}

.flag-icon-aw {
  background-image: url(../flags/4x3/aw.svg);
}

.flag-icon-aw.flag-icon-squared {
  background-image: url(../flags/1x1/aw.svg);
}

.flag-icon-ax {
  background-image: url(../flags/4x3/ax.svg);
}

.flag-icon-ax.flag-icon-squared {
  background-image: url(../flags/1x1/ax.svg);
}

.flag-icon-az {
  background-image: url(../flags/4x3/az.svg);
}

.flag-icon-az.flag-icon-squared {
  background-image: url(../flags/1x1/az.svg);
}

.flag-icon-ba {
  background-image: url(../flags/4x3/ba.svg);
}

.flag-icon-ba.flag-icon-squared {
  background-image: url(../flags/1x1/ba.svg);
}

.flag-icon-bb {
  background-image: url(../flags/4x3/bb.svg);
}

.flag-icon-bb.flag-icon-squared {
  background-image: url(../flags/1x1/bb.svg);
}

.flag-icon-bd {
  background-image: url(../flags/4x3/bd.svg);
}

.flag-icon-bd.flag-icon-squared {
  background-image: url(../flags/1x1/bd.svg);
}

.flag-icon-be {
  background-image: url(../flags/4x3/be.svg);
}

.flag-icon-be.flag-icon-squared {
  background-image: url(../flags/1x1/be.svg);
}

.flag-icon-bf {
  background-image: url(../flags/4x3/bf.svg);
}

.flag-icon-bf.flag-icon-squared {
  background-image: url(../flags/1x1/bf.svg);
}

.flag-icon-bg {
  background-image: url(../flags/4x3/bg.svg);
}

.flag-icon-bg.flag-icon-squared {
  background-image: url(../flags/1x1/bg.svg);
}

.flag-icon-bh {
  background-image: url(../flags/4x3/bh.svg);
}

.flag-icon-bh.flag-icon-squared {
  background-image: url(../flags/1x1/bh.svg);
}

.flag-icon-bi {
  background-image: url(../flags/4x3/bi.svg);
}

.flag-icon-bi.flag-icon-squared {
  background-image: url(../flags/1x1/bi.svg);
}

.flag-icon-bj {
  background-image: url(../flags/4x3/bj.svg);
}

.flag-icon-bj.flag-icon-squared {
  background-image: url(../flags/1x1/bj.svg);
}

.flag-icon-bl {
  background-image: url(../flags/4x3/bl.svg);
}

.flag-icon-bl.flag-icon-squared {
  background-image: url(../flags/1x1/bl.svg);
}

.flag-icon-bm {
  background-image: url(../flags/4x3/bm.svg);
}

.flag-icon-bm.flag-icon-squared {
  background-image: url(../flags/1x1/bm.svg);
}

.flag-icon-bn {
  background-image: url(../flags/4x3/bn.svg);
}

.flag-icon-bn.flag-icon-squared {
  background-image: url(../flags/1x1/bn.svg);
}

.flag-icon-bo {
  background-image: url(../flags/4x3/bo.svg);
}

.flag-icon-bo.flag-icon-squared {
  background-image: url(../flags/1x1/bo.svg);
}

.flag-icon-bq {
  background-image: url(../flags/4x3/bq.svg);
}

.flag-icon-bq.flag-icon-squared {
  background-image: url(../flags/1x1/bq.svg);
}

.flag-icon-br {
  background-image: url(../flags/4x3/br.svg);
}

.flag-icon-br.flag-icon-squared {
  background-image: url(../flags/1x1/br.svg);
}

.flag-icon-bs {
  background-image: url(../flags/4x3/bs.svg);
}

.flag-icon-bs.flag-icon-squared {
  background-image: url(../flags/1x1/bs.svg);
}

.flag-icon-bt {
  background-image: url(../flags/4x3/bt.svg);
}

.flag-icon-bt.flag-icon-squared {
  background-image: url(../flags/1x1/bt.svg);
}

.flag-icon-bv {
  background-image: url(../flags/4x3/bv.svg);
}

.flag-icon-bv.flag-icon-squared {
  background-image: url(../flags/1x1/bv.svg);
}

.flag-icon-bw {
  background-image: url(../flags/4x3/bw.svg);
}

.flag-icon-bw.flag-icon-squared {
  background-image: url(../flags/1x1/bw.svg);
}

.flag-icon-by {
  background-image: url(../flags/4x3/by.svg);
}

.flag-icon-by.flag-icon-squared {
  background-image: url(../flags/1x1/by.svg);
}

.flag-icon-bz {
  background-image: url(../flags/4x3/bz.svg);
}

.flag-icon-bz.flag-icon-squared {
  background-image: url(../flags/1x1/bz.svg);
}

.flag-icon-ca {
  background-image: url(../flags/4x3/ca.svg);
}

.flag-icon-ca.flag-icon-squared {
  background-image: url(../flags/1x1/ca.svg);
}

.flag-icon-cc {
  background-image: url(../flags/4x3/cc.svg);
}

.flag-icon-cc.flag-icon-squared {
  background-image: url(../flags/1x1/cc.svg);
}

.flag-icon-cd {
  background-image: url(../flags/4x3/cd.svg);
}

.flag-icon-cd.flag-icon-squared {
  background-image: url(../flags/1x1/cd.svg);
}

.flag-icon-cf {
  background-image: url(../flags/4x3/cf.svg);
}

.flag-icon-cf.flag-icon-squared {
  background-image: url(../flags/1x1/cf.svg);
}

.flag-icon-cg {
  background-image: url(../flags/4x3/cg.svg);
}

.flag-icon-cg.flag-icon-squared {
  background-image: url(../flags/1x1/cg.svg);
}

.flag-icon-ch {
  background-image: url(../flags/4x3/ch.svg);
}

.flag-icon-ch.flag-icon-squared {
  background-image: url(../flags/1x1/ch.svg);
}

.flag-icon-ci {
  background-image: url(../flags/4x3/ci.svg);
}

.flag-icon-ci.flag-icon-squared {
  background-image: url(../flags/1x1/ci.svg);
}

.flag-icon-ck {
  background-image: url(../flags/4x3/ck.svg);
}

.flag-icon-ck.flag-icon-squared {
  background-image: url(../flags/1x1/ck.svg);
}

.flag-icon-cl {
  background-image: url(../flags/4x3/cl.svg);
}

.flag-icon-cl.flag-icon-squared {
  background-image: url(../flags/1x1/cl.svg);
}

.flag-icon-cm {
  background-image: url(../flags/4x3/cm.svg);
}

.flag-icon-cm.flag-icon-squared {
  background-image: url(../flags/1x1/cm.svg);
}

.flag-icon-cn {
  background-image: url(../flags/4x3/cn.svg);
}

.flag-icon-cn.flag-icon-squared {
  background-image: url(../flags/1x1/cn.svg);
}

.flag-icon-co {
  background-image: url(../flags/4x3/co.svg);
}

.flag-icon-co.flag-icon-squared {
  background-image: url(../flags/1x1/co.svg);
}

.flag-icon-cr {
  background-image: url(../flags/4x3/cr.svg);
}

.flag-icon-cr.flag-icon-squared {
  background-image: url(../flags/1x1/cr.svg);
}

.flag-icon-cu {
  background-image: url(../flags/4x3/cu.svg);
}

.flag-icon-cu.flag-icon-squared {
  background-image: url(../flags/1x1/cu.svg);
}

.flag-icon-cv {
  background-image: url(../flags/4x3/cv.svg);
}

.flag-icon-cv.flag-icon-squared {
  background-image: url(../flags/1x1/cv.svg);
}

.flag-icon-cw {
  background-image: url(../flags/4x3/cw.svg);
}

.flag-icon-cw.flag-icon-squared {
  background-image: url(../flags/1x1/cw.svg);
}

.flag-icon-cx {
  background-image: url(../flags/4x3/cx.svg);
}

.flag-icon-cx.flag-icon-squared {
  background-image: url(../flags/1x1/cx.svg);
}

.flag-icon-cy {
  background-image: url(../flags/4x3/cy.svg);
}

.flag-icon-cy.flag-icon-squared {
  background-image: url(../flags/1x1/cy.svg);
}

.flag-icon-cz {
  background-image: url(../flags/4x3/cz.svg);
}

.flag-icon-cz.flag-icon-squared {
  background-image: url(../flags/1x1/cz.svg);
}

.flag-icon-de {
  background-image: url(../flags/4x3/de.svg);
}

.flag-icon-de.flag-icon-squared {
  background-image: url(../flags/1x1/de.svg);
}

.flag-icon-dj {
  background-image: url(../flags/4x3/dj.svg);
}

.flag-icon-dj.flag-icon-squared {
  background-image: url(../flags/1x1/dj.svg);
}

.flag-icon-dk {
  background-image: url(../flags/4x3/dk.svg);
}

.flag-icon-dk.flag-icon-squared {
  background-image: url(../flags/1x1/dk.svg);
}

.flag-icon-dm {
  background-image: url(../flags/4x3/dm.svg);
}

.flag-icon-dm.flag-icon-squared {
  background-image: url(../flags/1x1/dm.svg);
}

.flag-icon-do {
  background-image: url(../flags/4x3/do.svg);
}

.flag-icon-do.flag-icon-squared {
  background-image: url(../flags/1x1/do.svg);
}

.flag-icon-dz {
  background-image: url(../flags/4x3/dz.svg);
}

.flag-icon-dz.flag-icon-squared {
  background-image: url(../flags/1x1/dz.svg);
}

.flag-icon-ec {
  background-image: url(../flags/4x3/ec.svg);
}

.flag-icon-ec.flag-icon-squared {
  background-image: url(../flags/1x1/ec.svg);
}

.flag-icon-ee {
  background-image: url(../flags/4x3/ee.svg);
}

.flag-icon-ee.flag-icon-squared {
  background-image: url(../flags/1x1/ee.svg);
}

.flag-icon-eg {
  background-image: url(../flags/4x3/eg.svg);
}

.flag-icon-eg.flag-icon-squared {
  background-image: url(../flags/1x1/eg.svg);
}

.flag-icon-eh {
  background-image: url(../flags/4x3/eh.svg);
}

.flag-icon-eh.flag-icon-squared {
  background-image: url(../flags/1x1/eh.svg);
}

.flag-icon-er {
  background-image: url(../flags/4x3/er.svg);
}

.flag-icon-er.flag-icon-squared {
  background-image: url(../flags/1x1/er.svg);
}

.flag-icon-es {
  background-image: url(../flags/4x3/es.svg);
}

.flag-icon-es.flag-icon-squared {
  background-image: url(../flags/1x1/es.svg);
}

.flag-icon-et {
  background-image: url(../flags/4x3/et.svg);
}

.flag-icon-et.flag-icon-squared {
  background-image: url(../flags/1x1/et.svg);
}

.flag-icon-fi {
  background-image: url(../flags/4x3/fi.svg);
}

.flag-icon-fi.flag-icon-squared {
  background-image: url(../flags/1x1/fi.svg);
}

.flag-icon-fj {
  background-image: url(../flags/4x3/fj.svg);
}

.flag-icon-fj.flag-icon-squared {
  background-image: url(../flags/1x1/fj.svg);
}

.flag-icon-fk {
  background-image: url(../flags/4x3/fk.svg);
}

.flag-icon-fk.flag-icon-squared {
  background-image: url(../flags/1x1/fk.svg);
}

.flag-icon-fm {
  background-image: url(../flags/4x3/fm.svg);
}

.flag-icon-fm.flag-icon-squared {
  background-image: url(../flags/1x1/fm.svg);
}

.flag-icon-fo {
  background-image: url(../flags/4x3/fo.svg);
}

.flag-icon-fo.flag-icon-squared {
  background-image: url(../flags/1x1/fo.svg);
}

.flag-icon-fr {
  background-image: url(../flags/4x3/fr.svg);
}

.flag-icon-fr.flag-icon-squared {
  background-image: url(../flags/1x1/fr.svg);
}

.flag-icon-ga {
  background-image: url(../flags/4x3/ga.svg);
}

.flag-icon-ga.flag-icon-squared {
  background-image: url(../flags/1x1/ga.svg);
}

.flag-icon-gb {
  background-image: url(../flags/4x3/gb.svg);
}

.flag-icon-gb.flag-icon-squared {
  background-image: url(../flags/1x1/gb.svg);
}

.flag-icon-gd {
  background-image: url(../flags/4x3/gd.svg);
}

.flag-icon-gd.flag-icon-squared {
  background-image: url(../flags/1x1/gd.svg);
}

.flag-icon-ge {
  background-image: url(../flags/4x3/ge.svg);
}

.flag-icon-ge.flag-icon-squared {
  background-image: url(../flags/1x1/ge.svg);
}

.flag-icon-gf {
  background-image: url(../flags/4x3/gf.svg);
}

.flag-icon-gf.flag-icon-squared {
  background-image: url(../flags/1x1/gf.svg);
}

.flag-icon-gg {
  background-image: url(../flags/4x3/gg.svg);
}

.flag-icon-gg.flag-icon-squared {
  background-image: url(../flags/1x1/gg.svg);
}

.flag-icon-gh {
  background-image: url(../flags/4x3/gh.svg);
}

.flag-icon-gh.flag-icon-squared {
  background-image: url(../flags/1x1/gh.svg);
}

.flag-icon-gi {
  background-image: url(../flags/4x3/gi.svg);
}

.flag-icon-gi.flag-icon-squared {
  background-image: url(../flags/1x1/gi.svg);
}

.flag-icon-gl {
  background-image: url(../flags/4x3/gl.svg);
}

.flag-icon-gl.flag-icon-squared {
  background-image: url(../flags/1x1/gl.svg);
}

.flag-icon-gm {
  background-image: url(../flags/4x3/gm.svg);
}

.flag-icon-gm.flag-icon-squared {
  background-image: url(../flags/1x1/gm.svg);
}

.flag-icon-gn {
  background-image: url(../flags/4x3/gn.svg);
}

.flag-icon-gn.flag-icon-squared {
  background-image: url(../flags/1x1/gn.svg);
}

.flag-icon-gp {
  background-image: url(../flags/4x3/gp.svg);
}

.flag-icon-gp.flag-icon-squared {
  background-image: url(../flags/1x1/gp.svg);
}

.flag-icon-gq {
  background-image: url(../flags/4x3/gq.svg);
}

.flag-icon-gq.flag-icon-squared {
  background-image: url(../flags/1x1/gq.svg);
}

.flag-icon-gr {
  background-image: url(../flags/4x3/gr.svg);
}

.flag-icon-gr.flag-icon-squared {
  background-image: url(../flags/1x1/gr.svg);
}

.flag-icon-gs {
  background-image: url(../flags/4x3/gs.svg);
}

.flag-icon-gs.flag-icon-squared {
  background-image: url(../flags/1x1/gs.svg);
}

.flag-icon-gt {
  background-image: url(../flags/4x3/gt.svg);
}

.flag-icon-gt.flag-icon-squared {
  background-image: url(../flags/1x1/gt.svg);
}

.flag-icon-gu {
  background-image: url(../flags/4x3/gu.svg);
}

.flag-icon-gu.flag-icon-squared {
  background-image: url(../flags/1x1/gu.svg);
}

.flag-icon-gw {
  background-image: url(../flags/4x3/gw.svg);
}

.flag-icon-gw.flag-icon-squared {
  background-image: url(../flags/1x1/gw.svg);
}

.flag-icon-gy {
  background-image: url(../flags/4x3/gy.svg);
}

.flag-icon-gy.flag-icon-squared {
  background-image: url(../flags/1x1/gy.svg);
}

.flag-icon-hk {
  background-image: url(../flags/4x3/hk.svg);
}

.flag-icon-hk.flag-icon-squared {
  background-image: url(../flags/1x1/hk.svg);
}

.flag-icon-hm {
  background-image: url(../flags/4x3/hm.svg);
}

.flag-icon-hm.flag-icon-squared {
  background-image: url(../flags/1x1/hm.svg);
}

.flag-icon-hn {
  background-image: url(../flags/4x3/hn.svg);
}

.flag-icon-hn.flag-icon-squared {
  background-image: url(../flags/1x1/hn.svg);
}

.flag-icon-hr {
  background-image: url(../flags/4x3/hr.svg);
}

.flag-icon-hr.flag-icon-squared {
  background-image: url(../flags/1x1/hr.svg);
}

.flag-icon-ht {
  background-image: url(../flags/4x3/ht.svg);
}

.flag-icon-ht.flag-icon-squared {
  background-image: url(../flags/1x1/ht.svg);
}

.flag-icon-hu {
  background-image: url(../flags/4x3/hu.svg);
}

.flag-icon-hu.flag-icon-squared {
  background-image: url(../flags/1x1/hu.svg);
}

.flag-icon-id {
  background-image: url(../flags/4x3/id.svg);
}

.flag-icon-id.flag-icon-squared {
  background-image: url(../flags/1x1/id.svg);
}

.flag-icon-ie {
  background-image: url(../flags/4x3/ie.svg);
}

.flag-icon-ie.flag-icon-squared {
  background-image: url(../flags/1x1/ie.svg);
}

.flag-icon-il {
  background-image: url(../flags/4x3/il.svg);
}

.flag-icon-il.flag-icon-squared {
  background-image: url(../flags/1x1/il.svg);
}

.flag-icon-im {
  background-image: url(../flags/4x3/im.svg);
}

.flag-icon-im.flag-icon-squared {
  background-image: url(../flags/1x1/im.svg);
}

.flag-icon-in {
  background-image: url(../flags/4x3/in.svg);
}

.flag-icon-in.flag-icon-squared {
  background-image: url(../flags/1x1/in.svg);
}

.flag-icon-io {
  background-image: url(../flags/4x3/io.svg);
}

.flag-icon-io.flag-icon-squared {
  background-image: url(../flags/1x1/io.svg);
}

.flag-icon-iq {
  background-image: url(../flags/4x3/iq.svg);
}

.flag-icon-iq.flag-icon-squared {
  background-image: url(../flags/1x1/iq.svg);
}

.flag-icon-ir {
  background-image: url(../flags/4x3/ir.svg);
}

.flag-icon-ir.flag-icon-squared {
  background-image: url(../flags/1x1/ir.svg);
}

.flag-icon-is {
  background-image: url(../flags/4x3/is.svg);
}

.flag-icon-is.flag-icon-squared {
  background-image: url(../flags/1x1/is.svg);
}

.flag-icon-it {
  background-image: url(../flags/4x3/it.svg);
}

.flag-icon-it.flag-icon-squared {
  background-image: url(../flags/1x1/it.svg);
}

.flag-icon-je {
  background-image: url(../flags/4x3/je.svg);
}

.flag-icon-je.flag-icon-squared {
  background-image: url(../flags/1x1/je.svg);
}

.flag-icon-jm {
  background-image: url(../flags/4x3/jm.svg);
}

.flag-icon-jm.flag-icon-squared {
  background-image: url(../flags/1x1/jm.svg);
}

.flag-icon-jo {
  background-image: url(../flags/4x3/jo.svg);
}

.flag-icon-jo.flag-icon-squared {
  background-image: url(../flags/1x1/jo.svg);
}

.flag-icon-jp {
  background-image: url(../flags/4x3/jp.svg);
}

.flag-icon-jp.flag-icon-squared {
  background-image: url(../flags/1x1/jp.svg);
}

.flag-icon-ke {
  background-image: url(../flags/4x3/ke.svg);
}

.flag-icon-ke.flag-icon-squared {
  background-image: url(../flags/1x1/ke.svg);
}

.flag-icon-kg {
  background-image: url(../flags/4x3/kg.svg);
}

.flag-icon-kg.flag-icon-squared {
  background-image: url(../flags/1x1/kg.svg);
}

.flag-icon-kh {
  background-image: url(../flags/4x3/kh.svg);
}

.flag-icon-kh.flag-icon-squared {
  background-image: url(../flags/1x1/kh.svg);
}

.flag-icon-ki {
  background-image: url(../flags/4x3/ki.svg);
}

.flag-icon-ki.flag-icon-squared {
  background-image: url(../flags/1x1/ki.svg);
}

.flag-icon-km {
  background-image: url(../flags/4x3/km.svg);
}

.flag-icon-km.flag-icon-squared {
  background-image: url(../flags/1x1/km.svg);
}

.flag-icon-kn {
  background-image: url(../flags/4x3/kn.svg);
}

.flag-icon-kn.flag-icon-squared {
  background-image: url(../flags/1x1/kn.svg);
}

.flag-icon-kp {
  background-image: url(../flags/4x3/kp.svg);
}

.flag-icon-kp.flag-icon-squared {
  background-image: url(../flags/1x1/kp.svg);
}

.flag-icon-kr {
  background-image: url(../flags/4x3/kr.svg);
}

.flag-icon-kr.flag-icon-squared {
  background-image: url(../flags/1x1/kr.svg);
}

.flag-icon-kw {
  background-image: url(../flags/4x3/kw.svg);
}

.flag-icon-kw.flag-icon-squared {
  background-image: url(../flags/1x1/kw.svg);
}

.flag-icon-ky {
  background-image: url(../flags/4x3/ky.svg);
}

.flag-icon-ky.flag-icon-squared {
  background-image: url(../flags/1x1/ky.svg);
}

.flag-icon-kz {
  background-image: url(../flags/4x3/kz.svg);
}

.flag-icon-kz.flag-icon-squared {
  background-image: url(../flags/1x1/kz.svg);
}

.flag-icon-la {
  background-image: url(../flags/4x3/la.svg);
}

.flag-icon-la.flag-icon-squared {
  background-image: url(../flags/1x1/la.svg);
}

.flag-icon-lb {
  background-image: url(../flags/4x3/lb.svg);
}

.flag-icon-lb.flag-icon-squared {
  background-image: url(../flags/1x1/lb.svg);
}

.flag-icon-lc {
  background-image: url(../flags/4x3/lc.svg);
}

.flag-icon-lc.flag-icon-squared {
  background-image: url(../flags/1x1/lc.svg);
}

.flag-icon-li {
  background-image: url(../flags/4x3/li.svg);
}

.flag-icon-li.flag-icon-squared {
  background-image: url(../flags/1x1/li.svg);
}

.flag-icon-lk {
  background-image: url(../flags/4x3/lk.svg);
}

.flag-icon-lk.flag-icon-squared {
  background-image: url(../flags/1x1/lk.svg);
}

.flag-icon-lr {
  background-image: url(../flags/4x3/lr.svg);
}

.flag-icon-lr.flag-icon-squared {
  background-image: url(../flags/1x1/lr.svg);
}

.flag-icon-ls {
  background-image: url(../flags/4x3/ls.svg);
}

.flag-icon-ls.flag-icon-squared {
  background-image: url(../flags/1x1/ls.svg);
}

.flag-icon-lt {
  background-image: url(../flags/4x3/lt.svg);
}

.flag-icon-lt.flag-icon-squared {
  background-image: url(../flags/1x1/lt.svg);
}

.flag-icon-lu {
  background-image: url(../flags/4x3/lu.svg);
}

.flag-icon-lu.flag-icon-squared {
  background-image: url(../flags/1x1/lu.svg);
}

.flag-icon-lv {
  background-image: url(../flags/4x3/lv.svg);
}

.flag-icon-lv.flag-icon-squared {
  background-image: url(../flags/1x1/lv.svg);
}

.flag-icon-ly {
  background-image: url(../flags/4x3/ly.svg);
}

.flag-icon-ly.flag-icon-squared {
  background-image: url(../flags/1x1/ly.svg);
}

.flag-icon-ma {
  background-image: url(../flags/4x3/ma.svg);
}

.flag-icon-ma.flag-icon-squared {
  background-image: url(../flags/1x1/ma.svg);
}

.flag-icon-mc {
  background-image: url(../flags/4x3/mc.svg);
}

.flag-icon-mc.flag-icon-squared {
  background-image: url(../flags/1x1/mc.svg);
}

.flag-icon-md {
  background-image: url(../flags/4x3/md.svg);
}

.flag-icon-md.flag-icon-squared {
  background-image: url(../flags/1x1/md.svg);
}

.flag-icon-me {
  background-image: url(../flags/4x3/me.svg);
}

.flag-icon-me.flag-icon-squared {
  background-image: url(../flags/1x1/me.svg);
}

.flag-icon-mf {
  background-image: url(../flags/4x3/mf.svg);
}

.flag-icon-mf.flag-icon-squared {
  background-image: url(../flags/1x1/mf.svg);
}

.flag-icon-mg {
  background-image: url(../flags/4x3/mg.svg);
}

.flag-icon-mg.flag-icon-squared {
  background-image: url(../flags/1x1/mg.svg);
}

.flag-icon-mh {
  background-image: url(../flags/4x3/mh.svg);
}

.flag-icon-mh.flag-icon-squared {
  background-image: url(../flags/1x1/mh.svg);
}

.flag-icon-mk {
  background-image: url(../flags/4x3/mk.svg);
}

.flag-icon-mk.flag-icon-squared {
  background-image: url(../flags/1x1/mk.svg);
}

.flag-icon-ml {
  background-image: url(../flags/4x3/ml.svg);
}

.flag-icon-ml.flag-icon-squared {
  background-image: url(../flags/1x1/ml.svg);
}

.flag-icon-mm {
  background-image: url(../flags/4x3/mm.svg);
}

.flag-icon-mm.flag-icon-squared {
  background-image: url(../flags/1x1/mm.svg);
}

.flag-icon-mn {
  background-image: url(../flags/4x3/mn.svg);
}

.flag-icon-mn.flag-icon-squared {
  background-image: url(../flags/1x1/mn.svg);
}

.flag-icon-mo {
  background-image: url(../flags/4x3/mo.svg);
}

.flag-icon-mo.flag-icon-squared {
  background-image: url(../flags/1x1/mo.svg);
}

.flag-icon-mp {
  background-image: url(../flags/4x3/mp.svg);
}

.flag-icon-mp.flag-icon-squared {
  background-image: url(../flags/1x1/mp.svg);
}

.flag-icon-mq {
  background-image: url(../flags/4x3/mq.svg);
}

.flag-icon-mq.flag-icon-squared {
  background-image: url(../flags/1x1/mq.svg);
}

.flag-icon-mr {
  background-image: url(../flags/4x3/mr.svg);
}

.flag-icon-mr.flag-icon-squared {
  background-image: url(../flags/1x1/mr.svg);
}

.flag-icon-ms {
  background-image: url(../flags/4x3/ms.svg);
}

.flag-icon-ms.flag-icon-squared {
  background-image: url(../flags/1x1/ms.svg);
}

.flag-icon-mt {
  background-image: url(../flags/4x3/mt.svg);
}

.flag-icon-mt.flag-icon-squared {
  background-image: url(../flags/1x1/mt.svg);
}

.flag-icon-mu {
  background-image: url(../flags/4x3/mu.svg);
}

.flag-icon-mu.flag-icon-squared {
  background-image: url(../flags/1x1/mu.svg);
}

.flag-icon-mv {
  background-image: url(../flags/4x3/mv.svg);
}

.flag-icon-mv.flag-icon-squared {
  background-image: url(../flags/1x1/mv.svg);
}

.flag-icon-mw {
  background-image: url(../flags/4x3/mw.svg);
}

.flag-icon-mw.flag-icon-squared {
  background-image: url(../flags/1x1/mw.svg);
}

.flag-icon-mx {
  background-image: url(../flags/4x3/mx.svg);
}

.flag-icon-mx.flag-icon-squared {
  background-image: url(../flags/1x1/mx.svg);
}

.flag-icon-my {
  background-image: url(../flags/4x3/my.svg);
}

.flag-icon-my.flag-icon-squared {
  background-image: url(../flags/1x1/my.svg);
}

.flag-icon-mz {
  background-image: url(../flags/4x3/mz.svg);
}

.flag-icon-mz.flag-icon-squared {
  background-image: url(../flags/1x1/mz.svg);
}

.flag-icon-na {
  background-image: url(../flags/4x3/na.svg);
}

.flag-icon-na.flag-icon-squared {
  background-image: url(../flags/1x1/na.svg);
}

.flag-icon-nc {
  background-image: url(../flags/4x3/nc.svg);
}

.flag-icon-nc.flag-icon-squared {
  background-image: url(../flags/1x1/nc.svg);
}

.flag-icon-ne {
  background-image: url(../flags/4x3/ne.svg);
}

.flag-icon-ne.flag-icon-squared {
  background-image: url(../flags/1x1/ne.svg);
}

.flag-icon-nf {
  background-image: url(../flags/4x3/nf.svg);
}

.flag-icon-nf.flag-icon-squared {
  background-image: url(../flags/1x1/nf.svg);
}

.flag-icon-ng {
  background-image: url(../flags/4x3/ng.svg);
}

.flag-icon-ng.flag-icon-squared {
  background-image: url(../flags/1x1/ng.svg);
}

.flag-icon-ni {
  background-image: url(../flags/4x3/ni.svg);
}

.flag-icon-ni.flag-icon-squared {
  background-image: url(../flags/1x1/ni.svg);
}

.flag-icon-nl {
  background-image: url(../flags/4x3/nl.svg);
}

.flag-icon-nl.flag-icon-squared {
  background-image: url(../flags/1x1/nl.svg);
}

.flag-icon-no {
  background-image: url(../flags/4x3/no.svg);
}

.flag-icon-no.flag-icon-squared {
  background-image: url(../flags/1x1/no.svg);
}

.flag-icon-np {
  background-image: url(../flags/4x3/np.svg);
}

.flag-icon-np.flag-icon-squared {
  background-image: url(../flags/1x1/np.svg);
}

.flag-icon-nr {
  background-image: url(../flags/4x3/nr.svg);
}

.flag-icon-nr.flag-icon-squared {
  background-image: url(../flags/1x1/nr.svg);
}

.flag-icon-nu {
  background-image: url(../flags/4x3/nu.svg);
}

.flag-icon-nu.flag-icon-squared {
  background-image: url(../flags/1x1/nu.svg);
}

.flag-icon-nz {
  background-image: url(../flags/4x3/nz.svg);
}

.flag-icon-nz.flag-icon-squared {
  background-image: url(../flags/1x1/nz.svg);
}

.flag-icon-om {
  background-image: url(../flags/4x3/om.svg);
}

.flag-icon-om.flag-icon-squared {
  background-image: url(../flags/1x1/om.svg);
}

.flag-icon-pa {
  background-image: url(../flags/4x3/pa.svg);
}

.flag-icon-pa.flag-icon-squared {
  background-image: url(../flags/1x1/pa.svg);
}

.flag-icon-pe {
  background-image: url(../flags/4x3/pe.svg);
}

.flag-icon-pe.flag-icon-squared {
  background-image: url(../flags/1x1/pe.svg);
}

.flag-icon-pf {
  background-image: url(../flags/4x3/pf.svg);
}

.flag-icon-pf.flag-icon-squared {
  background-image: url(../flags/1x1/pf.svg);
}

.flag-icon-pg {
  background-image: url(../flags/4x3/pg.svg);
}

.flag-icon-pg.flag-icon-squared {
  background-image: url(../flags/1x1/pg.svg);
}

.flag-icon-ph {
  background-image: url(../flags/4x3/ph.svg);
}

.flag-icon-ph.flag-icon-squared {
  background-image: url(../flags/1x1/ph.svg);
}

.flag-icon-pk {
  background-image: url(../flags/4x3/pk.svg);
}

.flag-icon-pk.flag-icon-squared {
  background-image: url(../flags/1x1/pk.svg);
}

.flag-icon-pl {
  background-image: url(../flags/4x3/pl.svg);
}

.flag-icon-pl.flag-icon-squared {
  background-image: url(../flags/1x1/pl.svg);
}

.flag-icon-pm {
  background-image: url(../flags/4x3/pm.svg);
}

.flag-icon-pm.flag-icon-squared {
  background-image: url(../flags/1x1/pm.svg);
}

.flag-icon-pn {
  background-image: url(../flags/4x3/pn.svg);
}

.flag-icon-pn.flag-icon-squared {
  background-image: url(../flags/1x1/pn.svg);
}

.flag-icon-pr {
  background-image: url(../flags/4x3/pr.svg);
}

.flag-icon-pr.flag-icon-squared {
  background-image: url(../flags/1x1/pr.svg);
}

.flag-icon-ps {
  background-image: url(../flags/4x3/ps.svg);
}

.flag-icon-ps.flag-icon-squared {
  background-image: url(../flags/1x1/ps.svg);
}

.flag-icon-pt {
  background-image: url(../flags/4x3/pt.svg);
}

.flag-icon-pt.flag-icon-squared {
  background-image: url(../flags/1x1/pt.svg);
}

.flag-icon-pw {
  background-image: url(../flags/4x3/pw.svg);
}

.flag-icon-pw.flag-icon-squared {
  background-image: url(../flags/1x1/pw.svg);
}

.flag-icon-py {
  background-image: url(../flags/4x3/py.svg);
}

.flag-icon-py.flag-icon-squared {
  background-image: url(../flags/1x1/py.svg);
}

.flag-icon-qa {
  background-image: url(../flags/4x3/qa.svg);
}

.flag-icon-qa.flag-icon-squared {
  background-image: url(../flags/1x1/qa.svg);
}

.flag-icon-re {
  background-image: url(../flags/4x3/re.svg);
}

.flag-icon-re.flag-icon-squared {
  background-image: url(../flags/1x1/re.svg);
}

.flag-icon-ro {
  background-image: url(../flags/4x3/ro.svg);
}

.flag-icon-ro.flag-icon-squared {
  background-image: url(../flags/1x1/ro.svg);
}

.flag-icon-rs {
  background-image: url(../flags/4x3/rs.svg);
}

.flag-icon-rs.flag-icon-squared {
  background-image: url(../flags/1x1/rs.svg);
}

.flag-icon-ru {
  background-image: url(../flags/4x3/ru.svg);
}

.flag-icon-ru.flag-icon-squared {
  background-image: url(../flags/1x1/ru.svg);
}

.flag-icon-rw {
  background-image: url(../flags/4x3/rw.svg);
}

.flag-icon-rw.flag-icon-squared {
  background-image: url(../flags/1x1/rw.svg);
}

.flag-icon-sa {
  background-image: url(../flags/4x3/sa.svg);
}

.flag-icon-sa.flag-icon-squared {
  background-image: url(../flags/1x1/sa.svg);
}

.flag-icon-sb {
  background-image: url(../flags/4x3/sb.svg);
}

.flag-icon-sb.flag-icon-squared {
  background-image: url(../flags/1x1/sb.svg);
}

.flag-icon-sc {
  background-image: url(../flags/4x3/sc.svg);
}

.flag-icon-sc.flag-icon-squared {
  background-image: url(../flags/1x1/sc.svg);
}

.flag-icon-sd {
  background-image: url(../flags/4x3/sd.svg);
}

.flag-icon-sd.flag-icon-squared {
  background-image: url(../flags/1x1/sd.svg);
}

.flag-icon-se {
  background-image: url(../flags/4x3/se.svg);
}

.flag-icon-se.flag-icon-squared {
  background-image: url(../flags/1x1/se.svg);
}

.flag-icon-sg {
  background-image: url(../flags/4x3/sg.svg);
}

.flag-icon-sg.flag-icon-squared {
  background-image: url(../flags/1x1/sg.svg);
}

.flag-icon-sh {
  background-image: url(../flags/4x3/sh.svg);
}

.flag-icon-sh.flag-icon-squared {
  background-image: url(../flags/1x1/sh.svg);
}

.flag-icon-si {
  background-image: url(../flags/4x3/si.svg);
}

.flag-icon-si.flag-icon-squared {
  background-image: url(../flags/1x1/si.svg);
}

.flag-icon-sj {
  background-image: url(../flags/4x3/sj.svg);
}

.flag-icon-sj.flag-icon-squared {
  background-image: url(../flags/1x1/sj.svg);
}

.flag-icon-sk {
  background-image: url(../flags/4x3/sk.svg);
}

.flag-icon-sk.flag-icon-squared {
  background-image: url(../flags/1x1/sk.svg);
}

.flag-icon-sl {
  background-image: url(../flags/4x3/sl.svg);
}

.flag-icon-sl.flag-icon-squared {
  background-image: url(../flags/1x1/sl.svg);
}

.flag-icon-sm {
  background-image: url(../flags/4x3/sm.svg);
}

.flag-icon-sm.flag-icon-squared {
  background-image: url(../flags/1x1/sm.svg);
}

.flag-icon-sn {
  background-image: url(../flags/4x3/sn.svg);
}

.flag-icon-sn.flag-icon-squared {
  background-image: url(../flags/1x1/sn.svg);
}

.flag-icon-so {
  background-image: url(../flags/4x3/so.svg);
}

.flag-icon-so.flag-icon-squared {
  background-image: url(../flags/1x1/so.svg);
}

.flag-icon-sr {
  background-image: url(../flags/4x3/sr.svg);
}

.flag-icon-sr.flag-icon-squared {
  background-image: url(../flags/1x1/sr.svg);
}

.flag-icon-ss {
  background-image: url(../flags/4x3/ss.svg);
}

.flag-icon-ss.flag-icon-squared {
  background-image: url(../flags/1x1/ss.svg);
}

.flag-icon-st {
  background-image: url(../flags/4x3/st.svg);
}

.flag-icon-st.flag-icon-squared {
  background-image: url(../flags/1x1/st.svg);
}

.flag-icon-sv {
  background-image: url(../flags/4x3/sv.svg);
}

.flag-icon-sv.flag-icon-squared {
  background-image: url(../flags/1x1/sv.svg);
}

.flag-icon-sx {
  background-image: url(../flags/4x3/sx.svg);
}

.flag-icon-sx.flag-icon-squared {
  background-image: url(../flags/1x1/sx.svg);
}

.flag-icon-sy {
  background-image: url(../flags/4x3/sy.svg);
}

.flag-icon-sy.flag-icon-squared {
  background-image: url(../flags/1x1/sy.svg);
}

.flag-icon-sz {
  background-image: url(../flags/4x3/sz.svg);
}

.flag-icon-sz.flag-icon-squared {
  background-image: url(../flags/1x1/sz.svg);
}

.flag-icon-tc {
  background-image: url(../flags/4x3/tc.svg);
}

.flag-icon-tc.flag-icon-squared {
  background-image: url(../flags/1x1/tc.svg);
}

.flag-icon-td {
  background-image: url(../flags/4x3/td.svg);
}

.flag-icon-td.flag-icon-squared {
  background-image: url(../flags/1x1/td.svg);
}

.flag-icon-tf {
  background-image: url(../flags/4x3/tf.svg);
}

.flag-icon-tf.flag-icon-squared {
  background-image: url(../flags/1x1/tf.svg);
}

.flag-icon-tg {
  background-image: url(../flags/4x3/tg.svg);
}

.flag-icon-tg.flag-icon-squared {
  background-image: url(../flags/1x1/tg.svg);
}

.flag-icon-th {
  background-image: url(../flags/4x3/th.svg);
}

.flag-icon-th.flag-icon-squared {
  background-image: url(../flags/1x1/th.svg);
}

.flag-icon-tj {
  background-image: url(../flags/4x3/tj.svg);
}

.flag-icon-tj.flag-icon-squared {
  background-image: url(../flags/1x1/tj.svg);
}

.flag-icon-tk {
  background-image: url(../flags/4x3/tk.svg);
}

.flag-icon-tk.flag-icon-squared {
  background-image: url(../flags/1x1/tk.svg);
}

.flag-icon-tl {
  background-image: url(../flags/4x3/tl.svg);
}

.flag-icon-tl.flag-icon-squared {
  background-image: url(../flags/1x1/tl.svg);
}

.flag-icon-tm {
  background-image: url(../flags/4x3/tm.svg);
}

.flag-icon-tm.flag-icon-squared {
  background-image: url(../flags/1x1/tm.svg);
}

.flag-icon-tn {
  background-image: url(../flags/4x3/tn.svg);
}

.flag-icon-tn.flag-icon-squared {
  background-image: url(../flags/1x1/tn.svg);
}

.flag-icon-to {
  background-image: url(../flags/4x3/to.svg);
}

.flag-icon-to.flag-icon-squared {
  background-image: url(../flags/1x1/to.svg);
}

.flag-icon-tr {
  background-image: url(../flags/4x3/tr.svg);
}

.flag-icon-tr.flag-icon-squared {
  background-image: url(../flags/1x1/tr.svg);
}

.flag-icon-tt {
  background-image: url(../flags/4x3/tt.svg);
}

.flag-icon-tt.flag-icon-squared {
  background-image: url(../flags/1x1/tt.svg);
}

.flag-icon-tv {
  background-image: url(../flags/4x3/tv.svg);
}

.flag-icon-tv.flag-icon-squared {
  background-image: url(../flags/1x1/tv.svg);
}

.flag-icon-tw {
  background-image: url(../flags/4x3/tw.svg);
}

.flag-icon-tw.flag-icon-squared {
  background-image: url(../flags/1x1/tw.svg);
}

.flag-icon-tz {
  background-image: url(../flags/4x3/tz.svg);
}

.flag-icon-tz.flag-icon-squared {
  background-image: url(../flags/1x1/tz.svg);
}

.flag-icon-ua {
  background-image: url(../flags/4x3/ua.svg);
}

.flag-icon-ua.flag-icon-squared {
  background-image: url(../flags/1x1/ua.svg);
}

.flag-icon-ug {
  background-image: url(../flags/4x3/ug.svg);
}

.flag-icon-ug.flag-icon-squared {
  background-image: url(../flags/1x1/ug.svg);
}

.flag-icon-um {
  background-image: url(../flags/4x3/um.svg);
}

.flag-icon-um.flag-icon-squared {
  background-image: url(../flags/1x1/um.svg);
}

.flag-icon-us {
  background-image: url(../flags/4x3/us.svg);
}

.flag-icon-us.flag-icon-squared {
  background-image: url(../flags/1x1/us.svg);
}

.flag-icon-uy {
  background-image: url(../flags/4x3/uy.svg);
}

.flag-icon-uy.flag-icon-squared {
  background-image: url(../flags/1x1/uy.svg);
}

.flag-icon-uz {
  background-image: url(../flags/4x3/uz.svg);
}

.flag-icon-uz.flag-icon-squared {
  background-image: url(../flags/1x1/uz.svg);
}

.flag-icon-va {
  background-image: url(../flags/4x3/va.svg);
}

.flag-icon-va.flag-icon-squared {
  background-image: url(../flags/1x1/va.svg);
}

.flag-icon-vc {
  background-image: url(../flags/4x3/vc.svg);
}

.flag-icon-vc.flag-icon-squared {
  background-image: url(../flags/1x1/vc.svg);
}

.flag-icon-ve {
  background-image: url(../flags/4x3/ve.svg);
}

.flag-icon-ve.flag-icon-squared {
  background-image: url(../flags/1x1/ve.svg);
}

.flag-icon-vg {
  background-image: url(../flags/4x3/vg.svg);
}

.flag-icon-vg.flag-icon-squared {
  background-image: url(../flags/1x1/vg.svg);
}

.flag-icon-vi {
  background-image: url(../flags/4x3/vi.svg);
}

.flag-icon-vi.flag-icon-squared {
  background-image: url(../flags/1x1/vi.svg);
}

.flag-icon-vn {
  background-image: url(../flags/4x3/vn.svg);
}

.flag-icon-vn.flag-icon-squared {
  background-image: url(../flags/1x1/vn.svg);
}

.flag-icon-vu {
  background-image: url(../flags/4x3/vu.svg);
}

.flag-icon-vu.flag-icon-squared {
  background-image: url(../flags/1x1/vu.svg);
}

.flag-icon-wf {
  background-image: url(../flags/4x3/wf.svg);
}

.flag-icon-wf.flag-icon-squared {
  background-image: url(../flags/1x1/wf.svg);
}

.flag-icon-ws {
  background-image: url(../flags/4x3/ws.svg);
}

.flag-icon-ws.flag-icon-squared {
  background-image: url(../flags/1x1/ws.svg);
}

.flag-icon-ye {
  background-image: url(../flags/4x3/ye.svg);
}

.flag-icon-ye.flag-icon-squared {
  background-image: url(../flags/1x1/ye.svg);
}

.flag-icon-yt {
  background-image: url(../flags/4x3/yt.svg);
}

.flag-icon-yt.flag-icon-squared {
  background-image: url(../flags/1x1/yt.svg);
}

.flag-icon-za {
  background-image: url(../flags/4x3/za.svg);
}

.flag-icon-za.flag-icon-squared {
  background-image: url(../flags/1x1/za.svg);
}

.flag-icon-zm {
  background-image: url(../flags/4x3/zm.svg);
}

.flag-icon-zm.flag-icon-squared {
  background-image: url(../flags/1x1/zm.svg);
}

.flag-icon-zw {
  background-image: url(../flags/4x3/zw.svg);
}

.flag-icon-zw.flag-icon-squared {
  background-image: url(../flags/1x1/zw.svg);
}

.flag-icon-es-ca {
  background-image: url(../flags/4x3/es-ca.svg);
}

.flag-icon-es-ca.flag-icon-squared {
  background-image: url(../flags/1x1/es-ca.svg);
}

.flag-icon-eu {
  background-image: url(../flags/4x3/eu.svg);
}

.flag-icon-eu.flag-icon-squared {
  background-image: url(../flags/1x1/eu.svg);
}

.flag-icon-gb-eng {
  background-image: url(../flags/4x3/gb-eng.svg);
}

.flag-icon-gb-eng.flag-icon-squared {
  background-image: url(../flags/1x1/gb-eng.svg);
}

.flag-icon-gb-nir {
  background-image: url(../flags/4x3/gb-nir.svg);
}

.flag-icon-gb-nir.flag-icon-squared {
  background-image: url(../flags/1x1/gb-nir.svg);
}

.flag-icon-gb-sct {
  background-image: url(../flags/4x3/gb-sct.svg);
}

.flag-icon-gb-sct.flag-icon-squared {
  background-image: url(../flags/1x1/gb-sct.svg);
}

.flag-icon-gb-wls {
  background-image: url(../flags/4x3/gb-wls.svg);
}

.flag-icon-gb-wls.flag-icon-squared {
  background-image: url(../flags/1x1/gb-wls.svg);
}

.flag-icon-un {
  background-image: url(../flags/4x3/un.svg);
}

.flag-icon-un.flag-icon-squared {
  background-image: url(../flags/1x1/un.svg);
}

.flag-icon-xk {
  background-image: url(../flags/4x3/xk.svg);
}

.flag-icon-xk.flag-icon-squared {
  background-image: url(../flags/1x1/xk.svg);
}

html {
  overflow-y: scroll;
}

#diagrams_container {
  /*max-width: 1440px;*/
}

.d_col {
  float: left;
  min-height: 0px;
  padding: 5px;
}

.diagram_card, .diagram_preview {
  width: 100%;
  border-radius: 8px;
}

.diagram_card {
  margin-bottom: 10px;
  background-color: #fff;
  border: 1px solid #ddd;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}

.diagram_card h4 {
  text-align: center;
  padding: 10px;
  color: #666;
  font-size: 17px;
  font-weight: 700;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  position: absolute;
  width: 100%;
}

.diagram_card:hover {
  -webkit-box-shadow: 0 0px 15px 0px #00000055;
          box-shadow: 0 0px 15px 0px #00000055;
}

.diagram_info {
  padding: 20px;
  display: none;
}

.user_badge {
  display: inline-block;
  margin-top: 10px;
  padding-top: 15px;
  width: 100%;
}

.small-avatar {
  float: left;
  margin-right: 20px;
}

a.quickpreview {
  display: inline-block;
  background-color: #8c8c8c;
  padding: 3px;
  border-radius: 4px;
  color: white;
  font-size: 13px;
  line-height: 12px;
}

a.quickpreview:hover {
  display: inline-block;
  background-color: #777;
  color: white;
  text-decoration: none;
}

#metro {
  position: fixed;
  width: 0px;
  height: 100vh;
  left: 0;
  top: 0;
}

#backdrop {
  position: fixed;
  display: inline-block;
  height: 100vh;
  width: 100vw;
  top: 0;
  left: 0;
  background-color: #00000088;
  z-index: 999999999999;
  text-align: center;
  display: none;
}

#diagram_overview {
  display: inline-block;
  height: 90vh;
  margin-top: 5vh;
  width: 100%;
  max-width: 1400px;
  background-color: white;
  border-radius: 10px;
  text-align: left;
  overflow: hidden;
  position: relative;
}

#diagram_overview .title {
  font-size: 2.3rem;
  font-weight: 200;
}

#diagram_overview hr {
  color: #ddd;
}

#diagram_image_container {
  position: absolute;
  left: 0;
  width: 70%;
  height: 100%;
  display: inline-block;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

#diagram_info_container {
  position: absolute;
  right: 0;
  width: 30%;
  height: 100%;
  display: inline-block;
  border-left: 1px solid #ddd;
  overflow-y: auto;
}

#fast_prev, #full_res {
  text-align: center;
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: #333;
}

#fast_prev .diagram_preview,
#full_res .diagram_preview {
  display: inline-block;
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 0;
}

#diagram_image_container.zoom .diagram_preview {
  max-height: none;
}

#diagram_image_container.zoom {
  overflow-y: auto;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.noscroll {
  position: fixed;
  overflow-y: scroll;
  width: 100%;
}

.search_panel {
  background-color: white;
  padding: 10px;
  width: 100%;
  max-width: 800px;
  z-index: 1000;
  border-radius: 5px;
  border: 1px solid #c3c9ce;
  margin: 10px auto;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

input#search {
  display: inline-block;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  width: 70%;
  -webkit-user-select: auto;
     -moz-user-select: auto;
      -ms-user-select: auto;
          user-select: auto;
}

button#loadsearch {
  display: inline-block;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  width: 30%;
  margin-top: -3px;
}

.opentaglist {
  cursor: pointer;
  text-align: center;
}

.opentaglist:hover {
  color: indianred !important;
}

#closemodal {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 20px;
  height: 20px;
  opacity: 0.3;
  z-index: 999999;
  cursor: pointer !important;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

#closemodal:hover {
  opacity: 1;
}

#closemodal:before, #closemodal:after {
  position: absolute;
  left: 9px;
  content: ' ';
  height: 20px;
  width: 2px;
  background-color: #333;
}

#closemodal:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

#closemodal:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.search_options {
  width: calc(50% - 20px);
  display: inline-block;
  text-align: left;
  padding: 5px;
  vertical-align: top;
  color: #666;
  margin-top: 5px;
  margin-left: 10px;
}

.search_options .search_option {
  display: inline-block;
}

.search_options p {
  color: #777;
  font-weight: bold;
  margin-bottom: 5px;
  border-bottom: 2px solid #ccc;
}

.search_options input {
  margin-left: 5px;
}

.search_options label {
  font-size: 0.9em;
  margin-left: 5px;
}

.search_options label:hover {
  cursor: pointer !important;
  color: indianred;
}

/* SCSS HEX */
/*https://coolors.co/b3393e-d9884e-ffd75e-343a40-658aa4-bfcfd9-f2f5f8-ffffff-fff5d6-22d32b*/
/* STYLE */
.listed_diagram {
  background-color: white;
  padding: 10px;
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.25);
  border-radius: 4px;
}

.user_diagram_content {
  /*max-width: calc(100% - 140px);*/
}

/*	.list_diagram_thumb{
		float: left;
	    height: 50px;
	    width: 50px;
	}*/
.echoed_link {
  /* TITOLO DI OGNI DIAGRAMMA */
  color: #1a6398;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  margin-bottom: 5px;
}

.echoed_link:hover {
  text-decoration: none;
  color: #839DAF;
}

/* bottoni piccoli dei link */
.list_diagram_button {
  display: inline-block;
  border: 0px solid #e5e5e5;
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button;
  border-radius: 3px;
  font-size: 11px;
  padding: 1px 5px;
  line-height: 16px;
  color: #666;
  cursor: pointer;
  font-weight: 300;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.list_diagram_button.border {
  background-color: #F2F5F8;
}

.list_diagram_button:hover {
  -webkit-transition: 0.1s;
  transition: 0.1s;
  border-color: #1E75B3;
  color: white !important;
  background-color: #839DAF;
  text-decoration: none;
  /*.bi{
				color: $danger;
			}*/
}

.list_diagram_button.like-button-liked {
  background-image: none !important;
}

.list_diagram_button.like-button-liked .bi {
  color: red;
}

.share_d_menu_cont {
  position: relative;
  display: inline-block;
  width: auto;
  height: 18px;
  width: 18px;
  vertical-align: middle;
}

.list_separator {
  margin: 7px 5px -4px 5px;
}

.ldrcol {
  max-width: 180px;
  border-left: 1px solid #e2e3e5;
  padding: 0px;
  padding-left: 6px;
}

.ldb_delete {
  width: calc(100% - 9px);
}

.ldb_delete:hover {
  color: white !important;
  background-color: #B3393E;
}

/*************************************  STYLE COLLECTION ************************************/
.user_collection,
.other_diagrams,
.liked_diagrams,
.new_collection {
  background-color: #f1f1f2;
  /*background: linear-gradient(180deg, white 0%, $GS_blue 150px);*/
  /*color: white !important;*/
  border: 0;
}

.user_collection .card-header,
.other_diagrams .card-header,
.liked_diagrams .card-header,
.new_collection .card-header {
  color: #4a5f76 !important;
  border: 0;
  background-color: transparent;
  /*	border-top: 6px solid $GS_blue;
			padding-top: 7px;*/
  border-radius: 4px;
}

.collection_title {
  /*color: white !important;*/
  font-weight: 500;
  font-size: 18px;
  line-height: 20px;
}

.col_folder_icon {
  position: relative;
}

.col_folder_icon::before {
  font-size: 1.4em;
  vertical-align: -0.225em;
}

.col_folder_icon .folder_count {
  font-style: normal;
  font-size: 0.7em;
  position: absolute;
  left: 0;
  top: 0.15em;
  min-width: 1.9em;
  display: inline-block;
  text-align: center;
  font-weight: 600;
}

.liked_diagrams .list-group li,
.other_diagrams .list-group li,
.user_collection .list-group li {
  border-bottom: 0 !important;
  padding: 0 10px;
  margin: 0;
  background-color: transparent !important;
}

.liked_diagrams .list-group,
.other_diagrams .list-group,
.user_collection .list-group {
  margin-bottom: 10px;
}

.card-header:hover {
  cursor: pointer;
  background: linear-gradient(0deg, transparent 0%, #00000015 50px);
  /*		border-radius: 4px;
		border-top: 6px solid $primary;
		overflow: hidden;*/
}

.new_collection {
  background-color: transparent;
}

.new_collection .card-header:hover {
  background: transparent !important;
  color: #172027 !important;
}

.user_collection .user_collection {
  margin: 4px 10px !important;
  border: 1px solid #bbb;
  -webkit-box-shadow: 0px 0px 5px 2px #ffffff;
          box-shadow: 0px 0px 5px 2px #ffffff;
  background: linear-gradient(to bottom, #ffffff 0, #f1f1f2 40px, #e7e7e7 99%);
}

.user_collection ul:empty:before {
  content: "EMPTY";
  display: block;
  width: 100%;
  font-size: 10px;
}

/******************************************************************************************/
.select_privacy,
.select_collection {
  border: 0px solid #e5e5e5;
  -moz-appearance: button;
  color: #666;
  width: 140px;
  background-color: transparent;
  outline: none;
}

.select_privacy:hover,
.select_collection:hover {
  color: white !important;
  cursor: pointer;
}

.privacy_bi {
  display: none;
}

.public_diagram .publico {
  display: inline-block;
}

.private_diagram .privico {
  display: inline-block;
}

.viewonly_diagram .protico {
  display: inline-block;
}

.select_privacy,
.list_diagram_button.public_diagram .bi {
  /*background-color: #ecfae4 !important;*/
  color: #1E75B3;
  /* verdino: #066e06; */
}

.private_diagram .select_privacy,
.list_diagram_button.private_diagram .bi {
  /*background-color:  #f6d8d7  !important;*/
  color: #b00d0d;
}

.viewonly_diagram .select_privacy,
.list_diagram_button.viewonly_diagram .bi {
  /*background-color:  #fff3d5  !important;*/
  color: #a26c0a;
}

.new_collection .card-header {
  background-color: #fff;
  color: #888;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.new_collection ul, form {
  padding: 0;
  margin: 0;
}

.new_collection .card-header:hover {
  background-color: #f2f2f2;
  color: #888;
}

.new_collection button {
  width: 240px;
  display: inline;
  margin-top: -4px;
}

.new_collection input {
  width: calc(100% - 250px);
  display: inline;
}

.reordering .user_collection {
  border: 2px dashed #6E7A87;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: move;
}

.reordering .user_collection .listed_diagram {
  border: 2px dashed #6E7A87;
  background-color: #fafafa;
  border-radius: 4px;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: move;
}

.reordering .user_collection .listed_diagram .ldbsc {
  border: 1px dashed #6E7A87;
  pointer-events: all !important;
  background-color: #fff3cf;
}

.reordering .user_collection .listed_diagram .ldbsc:hover {
  background-color: #6E7A87;
}

.reordering li:hover {
  background-color: #e2e2c9;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: move !important;
}

span.move_arrows {
  position: absolute;
  right: 10px;
  top: 11px;
}

.user_controls {
  position: absolute;
  top: 0;
  right: 12px;
}

.user_controls button {
  padding: 2px 8px;
  opacity: 0.4;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.user_controls button:hover {
  opacity: 1;
}

#show_instructions:before {
  content: '?';
}

#show_instructions:hover:before {
  content: 'Show/Hide instructions';
}

#reorder_collections.reordering {
  opacity: 1 !important;
}

button:focus {
  outline: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

/* private collection */
.private_collection {
  background-color: #fff3cf;
}

.shared_with_you {
  background-color: #6c757d;
  color: white;
  padding: 2px 5px;
  font-size: 70%;
  position: absolute;
  right: 10px;
}

/*
	li.private_diagram:before{
    	content: 'PRIVATE';
	    display: inline-block;
	    background-color: #777;
	    font-size: 80%;
	    line-height: 100%;
	    padding: 4px 5px;
	    color: white;
	}
	li.viewonly_diagram:before{
    	content: 'VIEW-ONLY';
	    display: inline-block;
	    background-color: #999;
	    font-size: 80%;
	    line-height: 100%;
	    padding: 4px 5px;
	    color: white;
	}*/
.private_collection .public_diagram,
.private_collection .viewonly_diagram {
  background-color: yellow;
}

.private_collection .public_diagram:hover,
.private_collection .viewonly_diagram:hover {
  color: black !important;
}

/*
	.private_collection .public_diagram:before,
	.private_collection .viewonly_diagram:before{
    	content: 'PUBLIC';
	    display: inline-block;
	    background-color: #0aa10a;
	    font-size: 80%;
	    line-height: 100%;
	    padding: 4px 5px;
	    color: white;
	}
	.private_collection .viewonly_diagram:before{
    	content: 'VIEW-ONLY';
	}

	li.private_shared_diagram:before{
    	content: 'Shared';
	    display: inline-block;
	    background-color: #777;
	    font-size: 80%;
	    line-height: 100%;
	    padding: 4px 5px;
	    color: white;
	}*/
span.collection_share_form {
  width: 100%;
  display: block;
  margin-top: 8px;
}

.remove_guest:hover {
  color: indianred !important;
}

/* collection menu */
a.open_collection_menu {
  width: 22px;
  height: 18px;
  display: inline-block;
  position: absolute;
  top: 14px;
  right: 10px;
}

a.open_collection_menu:hover i {
  background-color: #444;
}

a.open_collection_menu i {
  background-color: #aaa;
  width: 20px;
  height: 3px;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

a.open_collection_menu i:nth-of-type(1) {
  top: 8px;
}

a.open_collection_menu i:nth-of-type(2) {
  top: 16px;
}

.collection_menu {
  display: none;
  position: absolute;
  background-color: #f2f2f2;
  padding: 5px;
  border: 1px solid #ccc;
  top: 10px;
  right: 40px;
  border-radius: 3px;
  height: 0;
  overflow: hidden;
}

.collection_menu a {
  display: block;
  padding: 5px;
}

.collection_menu a:hover {
  background-color: #ddd;
  cursor: pointer;
  text-decoration: none;
}

.collection_menu.showing {
  display: inline-block;
  height: auto;
  z-index: 900;
}

i.show_ddescr {
  width: 1.2em;
  height: 1.2em;
  display: inline-block;
  background-color: #95a7bc;
  text-align: center;
  font-size: 1em;
  line-height: 1.2em;
  font-style: normal;
  font-family: monospace;
  color: white;
  vertical-align: middle;
  border-radius: 50%;
  font-weight: 600;
  cursor: help;
}

.follow_unfollow:before {
  content: 'STOP FOLLOWING';
}

.follow_unfollow.follow:before {
  content: 'FOLLOW';
}

.follow_unfollow {
  border-radius: 0;
  width: 100%;
  font-size: 0.8em;
}

.follow_unfollow.follow {
  background-color: #ffc005;
  color: #000;
  border-color: #ffc005;
}

.follow_unfollow.follow:hover {
  background-color: #ffe8a4;
}

.followers_ed {
  width: 100%;
  font-size: 13px;
  color: #555;
  border-top: 1px solid #ddd;
}

.followers_n,
.following_n {
  display: inline-block;
  padding: 8px 5px;
  width: 50%;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.following_n {
  border-left: 1px solid #ddd;
}

.homebutton {
  border: 1px solid #ccc;
  border-radius: 10px;
  overflow: hidden;
  width: 100%;
  margin-bottom: 30px;
  /*box-shadow: 0 0 10px 5px #00000055;*/
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: scale(1);
          transform: scale(1);
  position: relative;
}

.homebutton:hover {
  -webkit-box-shadow: 0 0 20px 10px #00000011;
          box-shadow: 0 0 20px 10px #00000011;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  cursor: pointer;
}

.homebutton i {
  display: inline-block;
  position: absolute;
  width: 1px;
  height: 1px;
  background-color: transparent;
  border-radius: 5px;
  mix-blend-mode: screen;
}

.homebutton i:nth-of-type(1) {
  -webkit-animation: homebutton 2s infinite , blinker 1s  infinite linear;
          animation: homebutton 2s infinite , blinker 1s  infinite linear;
  -webkit-box-shadow: 0 0 200px 100px #ffffff66;
          box-shadow: 0 0 200px 100px #ffffff66;
}

.homebutton i:nth-of-type(2) {
  right: 0;
  bottom: 0;
  -webkit-animation: homebutton 2s infinite reverse, blinker 0.6s  infinite linear;
          animation: homebutton 2s infinite reverse, blinker 0.6s  infinite linear;
  -webkit-box-shadow: 0 0 200px 100px #ffffff66;
          box-shadow: 0 0 200px 100px #ffffff66;
}

.homebutton i:nth-of-type(3) {
  left: 0;
  bottom: 0;
  -webkit-animation: homebutton 3s infinite , blinker 0.8s  infinite linear;
          animation: homebutton 3s infinite , blinker 0.8s  infinite linear;
  -webkit-box-shadow: 0 0 200px 100px #ffffff66;
          box-shadow: 0 0 200px 100px #ffffff66;
}

@-webkit-keyframes homebutton {
  0% {
    top: 0;
    left: 0;
  }
  25% {
    top: 0;
    left: 100%;
  }
  50% {
    top: 100%;
    left: 100%;
  }
  75% {
    top: 100%;
    left: 0;
  }
  100% {
    top: 0;
    left: 0;
  }
}

@keyframes homebutton {
  0% {
    top: 0;
    left: 0;
  }
  25% {
    top: 0;
    left: 100%;
  }
  50% {
    top: 100%;
    left: 100%;
  }
  75% {
    top: 100%;
    left: 0;
  }
  100% {
    top: 0;
    left: 0;
  }
}

@-webkit-keyframes blinker {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  49% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@keyframes blinker {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  49% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

.smalltext {
  font-size: 12px;
  line-height: 12px;
  color: #aaa;
}

#diagram-content {
  width: 100%;
  border: 0;
  resize: none;
  outline: none;
}

.like-button-cont {
  display: inline-block;
}

.like-button {
  background-image: url(../../public/svg/heart-o.svg);
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 16px;
  background-position: 6px 5px;
  line-height: 24px;
  font-size: 12px;
  padding-left: 26px;
  border: none;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  outline: none !important;
}

.like-button span {
  margin-right: 4px;
  color: #aaa;
}

.like-button .like-counter {
  color: #333;
}

.like-button:hover {
  background-position: 5px 4px;
  background-size: 18px;
}

.like-button-liked {
  background-image: url(../../public/svg/heart-red.svg);
}

.user-info-card .badge.user-info {
  font-size: 15px;
  width: 100%;
  text-align: left;
  position: relative;
}

.user-info-card .profile-link {
  color: #b5363a;
  text-decoration: none;
  font-weight: bold;
}

.user-info-card .profile-link:hover {
  color: #515667;
  text-decoration: none;
}

.list-group .avatar-image {
  max-width: 70px;
  max-height: auto;
  margin-right: 20px;
  border-radius: 50%;
  border: 1px solid #aaa;
  padding: 2px;
}

.inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.inputfile + label {
  max-width: 100%;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  padding: 0.2rem 0.3rem;
  margin-bottom: 0;
  padding-bottom: 0;
}

.inputfile:focus + label,
.inputfile.has-focus + label {
  outline: 1px dotted #000;
  outline: -webkit-focus-ring-color auto 5px;
}

.inputfile + label svg {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  fill: currentColor;
  margin-top: -0.25em;
  margin-right: 0.25em;
}

.inputfile-3:focus + label,
.inputfile-3.has-focus + label,
.inputfile-3 + label:hover {
  color: indianred;
}

@media screen and (max-width: 50em) {
  .inputfile-6 + label strong {
    display: block;
  }
}

.pointer {
  cursor: pointer;
}

img.social_icon {
  max-height: 20px;
  margin-right: 4px;
}

.userlinks div {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.userlinks div img {
  -webkit-filter: saturate(0);
          filter: saturate(0);
}

.userlinks div:hover img {
  -webkit-filter: saturate(1.3);
          filter: saturate(1.3);
}

.userlinks div a {
  color: #555;
  text-decoration: none !important;
}

.userlinks div:hover a {
  color: indianred;
}

.private_info {
  background-color: #6c747d;
  color: white;
}

.bg-gsred {
  background-color: #b5363a;
}

.bg-gsblack {
  background-color: #2e313c;
}

.btn-gsaccent {
  background-color: #068C9B;
}

.btn-gsaccent:hover {
  background-color: #48AAAF;
}

.text-gsred {
  color: #b5363a;
}

.text-gsblack {
  color: #2e313c;
}

.a-gsred {
  color: #b5363a;
  text-decoration: none;
}

.a-gsred:hover {
  color: #515667;
  text-decoration: none;
}

.update_picture {
  width: 100%;
  background-color: black;
  position: absolute;
  border-radius: 50%;
  display: inline-block;
  padding-top: 100%;
  cursor: pointer;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.update_picture:hover {
  opacity: 0.8;
}

.update_picture span {
  color: white;
  line-height: 20px;
  font-size: 20px;
  font-weight: bold;
  position: absolute;
  top: calc(50% - 10px);
  width: 100%;
  text-align: center;
}

span.online_light {
  display: inline-block;
  height: 9px;
  width: 9px;
  border-radius: 50%;
  background-color: gray;
}

#diagram_upvote_img,
#diagram_downvote_img {
  display: inline-block;
  width: 26px;
  height: 26px;
  vertical-align: top;
  background-image: url(../icons/thumb_up.png);
  background-size: 88%;
  background-repeat: no-repeat;
  background-position: 0 0;
  margin-right: 5px;
}

#diagram_downvote_img {
  background-image: url(../icons/thumb_down.png);
  background-position: 0 4px;
}

.vote_diagram {
  font-size: 16px;
  line-height: 26px;
  vertical-align: middle;
  color: #888;
  min-width: 50px;
  text-align: left;
  padding-left: 0;
  border: none;
  background-color: transparent !important;
}

.vote_diagram span:hover {
  -webkit-transition: 0.6s;
  transition: 0.6s;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.selected-vote #diagram_downvote_img {
  background-image: url(../icons/thumb_down_sel.png);
}

.selected-vote #diagram_upvote_img {
  background-image: url(../icons/thumb_up_sel.png);
}

/* diagram share menu */
.share_d_menu_cont {
  position: relative;
  display: inline-block;
  width: auto;
  height: 18px;
  width: 18px;
  vertical-align: middle;
}

a.open_share_d_menu {
  cursor: pointer !important;
  display: inline-block;
  height: 18px;
  width: 18px;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDA2NEJCODczOTg0MTFFQkFBMDdENjdCQTlEODREQ0YiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDA2NEJCODgzOTg0MTFFQkFBMDdENjdCQTlEODREQ0YiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowMDY0QkI4NTM5ODQxMUVCQUEwN0Q2N0JBOUQ4NERDRiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowMDY0QkI4NjM5ODQxMUVCQUEwN0Q2N0JBOUQ4NERDRiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoK9pmQAAAF7SURBVHjalNRNKERRFMDxMYZEWCiZxkYWLCQfvYVsZCEUZSM7lKi3I1ZKPrK0sZKN2dqwoWjI50KxQJgNK7GwUaJQHv9TZ+r2em9yb/2aeefeOd177nmT47puxHLUoQM/2MOtBGOWSXoxhWp97sMiUjaJHKwgbsTke6XsMGq5m3hAXHbXbZOoMctcuXm0ItTAwz3eNV6FMXRlSXSVSdSEeTTos9xEEoWYRC3SKNDE5tjAbkx/vIxWYzKBNsjRn7Q+pyjBEDrxiy2syu4l0WzI+fNxgmE8aOwVc1jQZy+zWBI1Iy/k7HdGEnN4/oBs/Ua7NGjUB9SkWGNl/kQzuAxI8oYWrGnCqNZGinuGfUyjVBbnOo7zzOe19II23DfW9VWQFuhHj3bwhJZCWqUC7Vqew8z1n2NAF8t4xBeOcaC7Gg85/qC0itmQn9qI/rGpiXf8dTFqlvjvK3KBo5C5D7zYvGtJrV8koLPTNn8j2xjFiHa+3GoKS1LPPwEGAL6MSnVtGoPdAAAAAElFTkSuQmCC");
  background-position: center;
}

a.open_share_d_menu:hover {
  -webkit-transition: 0.6s;
  transition: 0.6s;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.like-button-cont,
.vote_diagram,
.share_d_menu_cont {
  position: relative;
}

.like-button-cont:before,
.vote_diagram:before,
.share_d_menu_cont:before {
  position: absolute;
  content: '';
  top: -35px;
  left: 6px;
  background-color: #f9f9be;
  color: #423939;
  border: 1px solid #a08888;
  border-radius: 10px;
  border-bottom-left-radius: 0;
  padding: 3px;
  font-size: 0.8em;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  white-space: nowrap;
  opacity: 0;
  -webkit-transform: scale(0) translateX(-50%) translateY(50%);
          transform: scale(0) translateX(-50%) translateY(50%);
}

.like-button-cont:hover:before,
.vote_diagram:hover:before,
.share_d_menu_cont:hover:before {
  opacity: 0.9;
  -webkit-transform: scale(1.1) translateX(0%) translateY(0%);
          transform: scale(1.1) translateX(0%) translateY(0%);
}

.like-button-cont:before {
  content: 'Add to favorites';
}

.vote_diagram:before {
  content: 'Vote diagram';
}

.share_d_menu_cont:before {
  content: 'Share...';
}

.share_d_menu {
  display: none;
  position: absolute;
  background-color: #f2f2f2;
  padding: 5px;
  border: 1px solid #ccc;
  top: 10px;
  left: 40px;
  border-radius: 3px;
  height: 0;
  overflow: hidden;
  width: 200px;
}

.share_d_menu textarea {
  position: absolute;
  left: -9999px;
  width: 0;
  height: 0;
}

.share_d_menu a {
  display: block;
  padding: 5px;
}

.share_d_menu a:hover {
  background-color: #ddd;
  cursor: pointer;
}

.share_d_menu.showing {
  display: inline-block;
  height: auto;
  z-index: 900;
}
