
.ns-button-icon, .ns-button-label {
	color: var(--ns-icon-color);
	box-sizing: border-box;
}

.ns-buttons {
	position: relative;
	--ns-btn-size: 40px;
	--ns-btn-margin: 10px;
}

.ns-buttons-wrapper {
	display: flex;
	flex-wrap: wrap;
}

.ns-columns.ns-has-total-share-count-before .ns-buttons-wrapper {
	margin-left: calc(var(--ns-btn-size) + 10px);
}

.ns-columns.ns-has-total-share-count-after .ns-buttons-wrapper {
	margin-right: calc(var(--ns-btn-size) + 10px);
}

body a.ns-button {
	display: inline-flex;
	height: var(--ns-btn-size);
	line-height: var(--ns-btn-size);
	margin: 0 var(--ns-btn-margin) var(--ns-btn-margin) 0;
	padding: 0;
	font-size: calc(var(--ns-btn-size) * .35);
	overflow: hidden;
	text-decoration: none;
	border: none;
	--ns-btn-color: #333;
	--ns-icon-color: #fff;
}

.ns-button * {
	pointer-events: none;
}

.ns-button-block {
	display: inline-flex;
	align-items: center;
	background: #333;
	background: var(--ns-btn-color);
}

.ns-button-wrapper {
	display: inline-flex;
	align-items: center;
	overflow: hidden;
	width: 100%;
}

.ns-button:not(.ns-hover-swap):hover .ns-button-wrapper > span:not(.ns-inverse) {
	box-shadow: inset 0 0 0 50px rgba(0, 0, 0, .1);
}

.ns-button:not(.ns-hover-swap):hover .ns-button-wrapper > span.ns-inverse {
	filter: brightness(.9);
}

.ns-button-icon {
	height: var(--ns-btn-size);
	width: var(--ns-btn-size);
	min-width: var(--ns-btn-size);
	justify-content: center;
}

.ns-button-icon > * {
	height: 50%;
	margin: 0 auto;
}

.ns-button-icon path {
	fill: currentColor;
}

.ns-button-icon:has(+ .ns-hide) {
	width: 100%;
}

.ns-button-share-count {
	display: none;
	align-items: center;
}

.ns-button.ns-share-count:hover svg, .ns-hide {
	display: none;
}

.ns-button.ns-share-count:hover .ns-button-share-count {
	display: flex;
}

.ns-button-label {
	height: 100%;
	flex-grow: 1;
	padding: 0 15px 0 0;
	overflow: hidden;
}

.ns-button-label-wrapper {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ns-button-icon.ns-border + .ns-button-label.ns-inverse, .ns-button-icon.ns-inverse + .ns-button-label:not(.ns-inverse), .ns-button-icon:not(.ns-inverse) + .ns-button-label.ns-inverse {
	padding-left: 10px;
}

.ns-button.bluesky {
	--ns-btn-color: #1185fe;
}

.ns-button.angellist, .ns-button.applemusic, .ns-button.codepen, .ns-button.digg, .ns-button.steam, .ns-button.threads, .ns-button.tiktok, .ns-button.twitter {
	--ns-btn-color: #000;
}

.ns-button.facebook {
	--ns-btn-color: #3b5998;
}

.ns-button.linkedin {
	--ns-btn-color: #0077b5;
}

.ns-button.pinterest {
	--ns-btn-color: #c92228;
}

.ns-button.buffer {
	--ns-btn-color: #323b43;
}

.ns-button.reddit {
	--ns-btn-color: #ff4500;
}

.ns-button.hackernews {
	--ns-btn-color: #f0652f;
}

.ns-button.whatsapp {
	--ns-btn-color: #25d366;
}

.ns-button.tumblr {
	--ns-btn-color: #35465c;
}

.ns-button.vkontakte {
	--ns-btn-color: #45668e;
}

.ns-button.xing {
	--ns-btn-color: #026466;
}

.ns-button.flipboard {
	--ns-btn-color: #e12828;
}

.ns-button.mix {
	--ns-btn-color: #fd8235;
}

.ns-button.yummly {
	--ns-btn-color: #e16120;
}

.ns-button.sms {
	--ns-btn-color: #218aff;
}

.ns-button.email {
	--ns-btn-color: #319324;
}

.ns-button.print {
	--ns-btn-color: #d34836;
}

.ns-button.\35 00px {
	--ns-btn-color: #0099e5;
}

.ns-button.bandcamp {
	--ns-btn-color: #408294;
}

.ns-button.behance {
	--ns-btn-color: #1769ff;
}

.ns-button.bitbucket {
	--ns-btn-color: #0052cc;
}

.ns-button.claude {
	--ns-btn-color: #d97757;
}

.ns-button.copy {
	--ns-btn-color: #816b5b;
}

.ns-button.deviantart {
	--ns-btn-color: #05cc47;
}

.ns-button.discord {
	--ns-btn-color: #7289da;
}

.ns-button.dribbble {
	--ns-btn-color: #ea4c89;
}

.ns-button.dropbox {
	--ns-btn-color: #0061ff;
}

.ns-button.flickr {
	--ns-btn-color: #0063dc;
}

.ns-button.foursquare {
	--ns-btn-color: #f94877;
}

.ns-button.gab {
	--ns-btn-color: #21cf7a;
}

.ns-button.github {
	--ns-btn-color: #181717;
}

.ns-button.goodreads {
	--ns-btn-color: #553b08;
}

.ns-button.googleai {
	--ns-btn-color: #4285f4;
}

.ns-button.grok {
	--ns-btn-color: #0a0a0a;
}

.ns-button.houzz {
	--ns-btn-color: #4dbc15;
}

.ns-button.instagram {
	--ns-btn-color: #e4405f;
}

.ns-button.jsfiddle {
	--ns-btn-color: #0084ff;
}

.ns-button.lastfm {
	--ns-btn-color: #d51007;
}

.ns-button.line {
	--ns-btn-color: #00b900;
}

.ns-button.location {
	--ns-btn-color: #ea4235;
}

.ns-button.mastodon {
	--ns-btn-color: #6364ff;
}

.ns-button.messenger {
	--ns-btn-color: #0078ff;
}

.ns-button.mistralai {
	--ns-btn-color: #fa500f;
}

.ns-button.mixcloud {
	--ns-btn-color: #314359;
}

.ns-button.nextdoor {
	--ns-btn-color: #1b8751;
}

.ns-button.chatgpt {
	--ns-btn-color: #181818;
}

.ns-button.perplexity {
	--ns-btn-color: #0098a1;
}

.ns-button.phone {
	--ns-btn-color: #512da8;
}

.ns-button.rss {
	--ns-btn-color: #ffa500;
}

.ns-button.share {
	--ns-btn-color: #2a2a2c;
}

.ns-button.skype {
	--ns-btn-color: #00aff0;
}

.ns-button.snapchat {
	--ns-btn-color: #fffc00;
}

.ns-button.soundcloud {
	--ns-btn-color: #f30;
}

.ns-button.spotify {
	--ns-btn-color: #1ed760;
}

.ns-button.stackoverflow {
	--ns-btn-color: #fe7a16;
}

.ns-button.subscribe {
	--ns-btn-color: #7a5189;
}

.ns-button.telegram {
	--ns-btn-color: #08c;
}

.ns-button.tripadvisor {
	--ns-btn-color: #34e0a1;
}

.ns-button.vimeo {
	--ns-btn-color: #1ab7ea;
}

.ns-button.wordpress {
	--ns-btn-color: #21759b;
}

.ns-button.yelp {
	--ns-btn-color: #d32323;
}

.ns-button.youtube {
	--ns-btn-color: #f00;
}

.ns-border {
	border: 2px solid var(--ns-btn-color);
}

body .ns-button .ns-button-block.ns-inverse, body .ns-button:hover .ns-button-block.ns-inverse, body a.ns-button.ns-hover-swap .ns-button-block.ns-button-wrapper {
	background: 0 0;
	color: var(--ns-btn-color);
}

.ns-columns .ns-buttons-wrapper > a {
	flex-basis: calc(100% / var(--ns-columns) - ( ( var(--ns-columns) - 1 ) * var(--ns-btn-margin) / var(--ns-columns) ));
}

.ns-last-col {
	margin-right: 0 !important;
}

.ns-buttons.small {
	--ns-btn-size: 32px;
}

.ns-buttons.large {
	--ns-btn-size: 50px;
}

.ns-rounded {
	border-radius: 5px;
}

.ns-rounded .ns-button-label {
	border-radius: 0 5px 5px 0;
}

.ns-circular {
	border-radius: 50px;
}

.ns-circular .ns-button-label {
	border-radius: 0 50px 50px 0;
}

.ns-align-right {
	justify-content: right;
}

.ns-align-right .ns-button {
	margin: 0 0 var(--ns-btn-margin) var(--ns-btn-margin);
}

.ns-align-center {
	justify-content: center;
}

.ns-align-center .ns-button {
	margin-left: calc(var(--ns-btn-margin) / 2);
	margin-right: calc(var(--ns-btn-margin) / 2);
}

.ns-total-share-count {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: calc(var(--ns-btn-size) * .375);
	line-height: normal;
	height: var(--ns-btn-size);
	width: var(--ns-btn-size);
	margin: 0 var(--ns-btn-margin) var(--ns-btn-margin) 0;
}

.ns-inline, .ns-inline-cta {
	margin-bottom: 10px;
}

.ns-total-share-count-wrapper {
	display: table-cell;
	vertical-align: middle;
}

.ns-total-share-count-amount {
	font-weight: 700;
}

.ns-total-share-count-text {
	font-size: calc(var(--ns-btn-size) * .2);
}

.ns-columns .ns-total-share-count {
	position: absolute;
	right: 0;
	margin: 0 !important;
}

.ns-columns.ns-has-total-share-count-before .ns-total-share-count {
	right: unset;
	left: 0;
}

.ns-inline-below {
	margin-top: 20px;
}

.ns-inline-cta {
	font-size: 20px;
}

.ns-floating {
	position: fixed;
	top: 25%;
	left: 5px;
	z-index: 999;
	height: 75%;
}

.ns-floating .ns-buttons-wrapper {
	flex-direction: column;
	height: 100%;
}

.ns-floating .ns-button-icon {
	width: 100%;
}

@media print {
	.ns-no-print, .ns-no-print * {
		display: none !important;
	}
}
