/* Shariff Wrapper */
.shariff-main { display: block !important; }
.shariff ul {
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  flex-flow: row wrap;
  padding: 0 !important;
  margin: 0 !important;
}
.shariff li {
  height: 35px;
  box-sizing: border-box;
  list-style-type: none !important;
  list-style-image: none !important;
  overflow: hidden !important;
  margin: 5px !important;
  padding: 0 !important;
  text-indent: 0 !important;
  border-left: 0 none !important;
}
.shariff a {
  position: relative;
  display: block !important;
  height: 35px;
  padding: 0;
  box-sizing: border-box;
  border: 0;
  color: #fff;
  text-decoration: none;
  background-image: none !important;
}
.shariff a:hover {
  color: #fff;
  background-color: inherit !important;
  text-decoration: none !important;
}
.shariff span { color: #fff; }
.shariff .shariff-count {
  position: absolute;
  height: 33px;
  top: 0;
  right: 0;
  margin: 1px;
  padding: 0 8px;
  background-color: rgba(255, 255, 255, 0.5);
}
.shariff .shariff-count,
.shariff .shariff-text {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 36px;
  vertical-align: top;
}
.shariff .shariff-text { padding-left: 3px; }
.shariff .shariff-icon svg {
  width: 32px;
  height: 20px;
  padding: 7px 1px;
  box-sizing: content-box;
  fill: #fff;
}
.shariff-button::before {
  content: none !important;
}
/* theme color */
.shariff .theme-color .shariff-count {
  background-color: transparent !important;
  color: #fff !important;
}
/* theme grey */
.shariff .theme-grey a { background-color: #b0b0b0 !important; }
.shariff .theme-grey a:hover { background-color: inherit !important; }
.shariff .theme-grey .shariff-count {
  background-color: transparent;
  color: #fff !important;
}
/* theme white */
.shariff .theme-white a { 
  background-color: #fff !important;
  border: 1px solid #ddd; 
}
.shariff .theme-white a:hover { background-color: #eee !important; }
.shariff .theme-white svg { fill: inherit; }
.shariff .theme-white .shariff-count { 
  background-color: transparent; 
  margin: 0;
}
/* theme round */
.shariff .theme-round li {
  background: none;
  width: 35px !important;
  height: 35px;
  border-radius: 50%;
  margin: 5px;
}
.shariff .theme-round a {
  position: relative;
  height: 35px;
  border-radius: 50%;
}
.shariff .theme-round .shariff-icon svg {
  display: block;
  margin: auto;
  padding: 8px 1px;
}
.shariff .theme-round .shariff-text { display: block; }
.shariff .theme-round .shariff-count {
  display: inline;
  padding: 0;
  right: 0;
  left: 0;
  top: 0;
  background-color: transparent;
  color: transparent !important;
  text-align: center;
}
.shariff .theme-round .shariff-count:hover {
  background-color: inherit !important;
  color: #fff !important;
}
/* buttonsize small */
.shariff .buttonsize-small li { height: 25px !important; }
.shariff .buttonsize-small a { height: 25px !important; }
.shariff .buttonsize-small.orientation-vertical li { width: 115px; }
.shariff .buttonsize-small .shariff-icon svg {
    width: 22px;
    height: 15px;
    padding: 5px 1px;
}
.shariff .buttonsize-small .shariff-text,
.shariff .buttonsize-small .shariff-count {
  font-size: 11px;
  line-height: 25px;
  padding: 0 5px;
  height: 23px;
}
.shariff .buttonsize-small .shariff-text { padding-left: 1px !important; }
.shariff .buttonsize-small.theme-round li { width: 25px !important; }
.shariff .buttonsize-small.theme-round a { width: 25px !important; }
.shariff .buttonsize-small.theme-round .shariff-count {
  padding: 0 !important;
  height: 25px !important;
}
/* buttonsize large */
.shariff .buttonsize-large li { height: 45px !important; }
.shariff .buttonsize-large a { height: 45px !important; }
.shariff .buttonsize-large.orientation-vertical li { width: 155px; }
.shariff .buttonsize-large .shariff-icon svg {
    width: 40px;
    height: 28px;
    padding: 9px 2px;
}
.shariff .buttonsize-large .shariff-text,
.shariff .buttonsize-large .shariff-count {
  font-size: 14px;
  line-height: 45px;
  padding: 0 10px;
  height: 43px;
}
.shariff .buttonsize-large .shariff-text { padding-left: 1px !important; }
.shariff .buttonsize-large.theme-round li { width: 45px !important; }
.shariff .buttonsize-large.theme-round a { width: 45px !important; }
.shariff .buttonsize-large.theme-round .shariff-count {
  padding: 0 !important;
  height: 45px !important;
}
/* orientation vertical */
.shariff .orientation-vertical { flex-direction: column; }
.shariff .orientation-vertical li { width: 135px; }
/* button alignment */
.shariff.shariff-align-flex-start ul { 
  justify-content: flex-start;
  align-items: flex-start;
}
.shariff.shariff-align-center ul { 
  justify-content: center;
  align-items: center;
}
.shariff.shariff-align-flex-end ul { 
  justify-content: flex-end;
  align-items: flex-end;
}
/* button alignment widget */
.widget .shariff.shariff-widget-align-flex-start ul { 
  justify-content: flex-start;
  align-items: flex-start;
}
.widget .shariff.shariff-widget-align-center ul { 
  justify-content: center;
  align-items: center;
}
.widget .shariff.shariff-widget-align-flex-end ul { 
  justify-content: flex-end;
  align-items: flex-end;
}
/* button stretch */
.shariff.shariff-buttonstretch li { flex: 1 0 auto !important; }
.shariff.shariff-buttonstretch .orientation-vertical li { width: 100% !important; }
/* widget */
.widget .shariff .theme-default li,
.widget .shariff .theme-color li,
.widget .shariff .theme-grey li,
.widget .shariff .theme-round li {
  border: medium none;
  font-weight: 400;
}
.widget .shariff .theme-default a,
.widget .shariff .theme-color a,
.widget .shariff .theme-grey a,
.widget .shariff .theme-round a {
  color: #fff;
  display: block;
  font-weight: 400;
}
.widget .shariff .theme-default a:hover,
.widget .shariff .theme-color a:hover,
.widget .shariff .theme-grey a:hover,
.widget .shariff .theme-round a:hover {
  color: #fff;
  font-weight: 400;
}
/* mailform */
.shariff_mailform {
  background: #eee none repeat scroll 0 0;
  border: 1px solid;
  margin: 10px;
  max-width: 750px;
  padding: 10px 15px;
}
.shariff_mailform form { margin: 0 !important; }
.shariff_mailform fieldset {
  border: none;
  margin: 0 !important;
  padding: 0;
}
.shariff_mailform label {
  margin-left: 3px;
  display: inline-block;
}
.shariff_mailform p { margin: 10px 0 !important; }
.shariff_mailform textarea {
  height: auto !important;
  margin: 0 !important;
  padding: 0;
  width: 100%;
}
.shariff_mailform input,
.shariff_mailform select {
  vertical-align: baseline;
  height: 2.2rem;
  padding: 0 10px;
  width: 100%;
  margin: 0 !important;
}
.shariff_mailform_error {
  color: red;
  font-weight: 700;
  padding: 0 0 5px;
}
.shariff_mailform_disabled {
  color: red;
  font-weight: 700;
  padding: 2px 0 0;
}
.shariff_mailform_headline {
  position: relative;
  padding: 0;
}
.shariff_mailform_headline legend {
  font-weight: 700 !important;
}
.shariff_mailform_submit {
    cursor: pointer;
}
.shariff_closeX {
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
  padding: 2px;
  text-decoration: none;
  box-shadow: none !important;
  border: none !important;
  cursor: pointer;
}
.shariff_closeX svg:hover {
  fill: #c00;
}
#shariff_mailform_url { display: none !important; }
/* missing usernames warning */
.shariff-warning {
  background-color: red;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  padding: 10px;
  text-align: center;
  margin: 0 auto;
  line-height: 1.5;
}
/* info button */
.shariff .info a {
  border: 1px solid #ddd;
  width: 35px;
}
.shariff .shariff-button.info {
  width: 35px;
  flex: 0 0 auto !important;
}
.shariff .buttonsize-small .shariff-button.info { width: 25px; }
.shariff .buttonsize-small .info a { width: 25px; }
.shariff .buttonsize-large .shariff-button.info { width: 45px; }
.shariff .buttonsize-large .info a { width: 45px; }
.shariff .info .shariff-icon svg {
  display: block;
  margin: auto;
}
/* media queries */
@media only screen and (max-width: 360px) {
  .shariff .orientation-horizontal li { width: 35px; }
  .shariff .orientation-horizontal.buttonsize-small li { width: 25px; }
  .shariff .orientation-horizontal.buttonsize-large li { width: 45px; }
  .shariff .orientation-horizontal .shariff-icon svg { display: block; margin: auto; }
  .shariff .orientation-horizontal .shariff-count { display: none; }
}
@media only screen and (min-width: 361px) {
  .shariff .orientation-horizontal li { width: 80px; }
  .shariff .orientation-horizontal li .shariff-text { display: block; }
  .shariff .orientation-horizontal li .shariff-count { display: block; }
}
@media only screen and (min-width: 768px) {
  .shariff .orientation-horizontal li { width: 130px; }
  .shariff .orientation-horizontal.buttonsize-small li { width: 105px; }
  .shariff .orientation-horizontal.buttonsize-large li { width: 155px; }
  .shariff .orientation-horizontal li .shariff-text { display: inline; }
}
@media only screen and (min-device-width: 1025px) {
  .shariff .shariff-mobile { display: none !important; }
}
