.xk-quick-tools {
	position: fixed;
	top: 54%;
	right: max(0px, env(safe-area-inset-right));
	z-index: 850;
	width: 48px;
	color: #0b2733;
	opacity: 0;
	pointer-events: none;
	transform: translate3d(18px, -45%, 0);
	transition: opacity .24s ease, transform .24s ease;
}

.xk-quick-tools.is-visible {
	opacity: .58;
	pointer-events: auto;
	transform: translate3d(7px, -50%, 0);
}

.xk-quick-tools.is-visible:hover,
.xk-quick-tools.is-visible:focus-within {
	opacity: 1;
	transform: translate3d(0, -50%, 0);
}

.xk-quick-tools__rail {
	display: flex;
	flex-direction: column;
	overflow: visible;
	border: 1px solid #cbdad5;
	border-radius: 24px;
	background: rgb(255 255 255 / 96%);
	box-shadow: 0 12px 32px rgb(11 39 51 / 14%);
	backdrop-filter: blur(12px);
}

.xk-quick-tool,
.xk-quick-tool-wrap {
	position: relative;
	display: grid;
	place-items: center;
	box-sizing: border-box;
	width: 46px;
	height: 46px;
	min-height: 46px;
	margin: 0;
	padding: 0;
	border: 0;
	border-bottom: 1px solid #edf1ee;
	border-radius: 0;
	background: transparent;
	color: #0d6f70;
	text-decoration: none;
	cursor: pointer;
}

.xk-quick-tools__rail > :first-child { border-radius: 23px 23px 0 0; }
.xk-quick-tools__rail > :last-child { border-bottom: 0; border-radius: 0 0 23px 23px; }
.xk-quick-tools__rail > :only-child { border-radius: 23px; }

.xk-quick-tool:hover,
.xk-quick-tool:focus-visible,
.xk-quick-tool[aria-expanded="true"],
.xk-quick-tool-wrap:hover,
.xk-quick-tool-wrap:focus-within {
	background: #fff2a9;
	color: #c64618;
}

.xk-quick-tool:focus-visible,
.xk-quick-tool-wrap:focus-within {
	outline: 3px solid rgb(8 127 131 / 24%);
	outline-offset: 2px;
}

.xk-quick-tool .dashicons,
.xk-quick-tool-wrap .dashicons {
	width: 21px;
	height: 21px;
	font-size: 21px;
	line-height: 21px;
}

.xk-quick-tool__tip {
	position: absolute;
	top: 50%;
	right: calc(100% + 9px);
	z-index: 2;
	width: max-content;
	max-width: 210px;
	padding: 6px 9px;
	border-radius: 7px;
	background: #0b2733;
	color: #fff;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.25;
	opacity: 0;
	pointer-events: none;
	transform: translate(5px, -50%);
	transition: opacity .15s ease, transform .15s ease;
}

.xk-quick-tool:hover .xk-quick-tool__tip,
.xk-quick-tool:focus-visible .xk-quick-tool__tip,
.xk-quick-tool-wrap:hover > .xk-quick-tool__tip,
.xk-quick-tool-wrap:focus-within > .xk-quick-tool__tip {
	opacity: 1;
	transform: translate(0, -50%);
}

.xk-quick-tool-wrap .xk-favorite-form { display: contents; margin: 0; }
.xk-quick-tool-wrap .xk-favorite-button {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	min-height: 46px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: inherit;
	background: transparent;
	color: inherit;
}
.xk-quick-tool-wrap .xk-favorite-button.is-saved { background: #fff2a9; color: #ef5a22; }

.xk-quick-panel {
	position: absolute;
	top: 50%;
	right: calc(100% + 12px);
	box-sizing: border-box;
	width: min(330px, calc(100vw - 92px));
	max-height: min(520px, calc(100vh - 24px));
	overflow: auto;
	padding: 18px;
	border: 1px solid #d8e3dd;
	border-radius: 16px;
	background: #fffdf8;
	box-shadow: 0 18px 46px rgb(11 39 51 / 18%);
	transform: translateY(-50%);
}
.xk-quick-panel[hidden] { display: none !important; }
.xk-quick-panel--search { top: 23px; }
.xk-quick-panel > strong { display: block; margin-bottom: 12px; font-size: 16px; }
.xk-quick-panel__heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.xk-quick-panel__heading strong { font-size: 16px; }
.xk-quick-panel__heading button { width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; background: #eef4f1; color: #526a72; font-size: 21px; line-height: 1; cursor: pointer; }

.xk-quick-panel--search form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.xk-quick-panel--search input {
	min-width: 0;
	height: 42px;
	padding: 8px 12px;
	border: 1px solid #bdd1cb;
	border-radius: 10px;
	background: #fff;
}
.xk-quick-panel--search button {
	min-height: 42px;
	padding: 8px 14px;
	border: 0;
	border-radius: 10px;
	background: #ff6422;
	color: #fff;
	font-weight: 750;
	cursor: pointer;
}

.xk-quick-panel--share { width: min(380px, calc(100vw - 92px)); }
.xk-quick-share-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px 12px; }
.xk-quick-share-grid a,
.xk-quick-share-grid button {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	min-height: 42px;
	padding: 5px 7px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: #274652;
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}
.xk-quick-share-grid a:hover,
.xk-quick-share-grid a:focus-visible,
.xk-quick-share-grid button:hover,
.xk-quick-share-grid button:focus-visible { background: #fff4e9; color: #c64618; }

.xk-share-mark { display: inline-grid; flex: 0 0 28px; place-items: center; width: 28px; height: 28px; box-sizing: border-box; border-radius: 5px; background: #7c858b; color: #fff; font-family: Arial,sans-serif; font-size: 17px; font-weight: 800; line-height: 1; }
.xk-share-mark--copy { background: #85878d; }
.xk-share-mark--qr { background: #fff; border: 1px solid #cbd1d4; color: #111; font-size: 21px; }
.xk-share-mark--email { background: #5d6b78; }
.xk-share-mark--wechat { background: #07c160; font-size: 18px; letter-spacing: -2px; }
.xk-share-mark--facebook { background: #1877f2; font-family: Georgia,serif; font-size: 23px; }
.xk-share-mark--whatsapp { background: #25d366; font-size: 21px; }
.xk-share-mark--messenger { background: linear-gradient(145deg,#00b2ff,#a033ff,#ff5280); }
.xk-share-mark--x { background: #111; }
.xk-share-mark--threads { background: #111; font-size: 19px; }
.xk-share-mark--instagram { background: linear-gradient(145deg,#515bd4,#8134af,#dd2a7b,#feda77); font-size: 22px; }
.xk-share-mark--tiktok { background: #111; text-shadow: -1px 0 #25f4ee,1px 0 #fe2c55; }
.xk-share-mark--snapchat { background: #fffc00; color: #111; font-size: 16px; }
.xk-share-mark--telegram { background: #229ed9; }
.xk-share-mark--viber { background: #7360f2; font-size: 20px; }
.xk-share-mark--line { background: #06c755; font-size: 8px; letter-spacing: -.3px; }
.xk-share-mark--reddit { background: #ff4500; font-size: 12px; }
.xk-share-mark--quora { background: #b92b27; font-family: Georgia,serif; font-size: 20px; }
.xk-share-mark--discord { background: #5865f2; font-size: 19px; }
.xk-share-mark--pinterest { background: #e60023; font-family: Georgia,serif; font-size: 20px; }
.xk-share-mark--linkedin { background: #0a66c2; font-size: 13px; }
.xk-share-mark--tumblr { background: #35465c; font-family: Georgia,serif; font-size: 20px; }
.xk-share-mark--bluesky { background: #1185fe; }
.xk-share-mark--mastodon { background: #6364ff; }
.xk-share-mark--vk { background: #0077ff; font-size: 10px; }
.xk-share-mark--okru { background: #ee8208; font-size: 10px; }
.xk-share-mark--weibo { background: #e6162d; }
.xk-share-mark--qzone { background: #f5b900; }
.xk-share-mark--qq { background: #12b7f5; font-size: 11px; }
.xk-share-mark--band { background: #21c531; }
.xk-share-mark--hatena { background: #00a4de; font-size: 11px; }

.xk-quick-panel--language > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.xk-quick-panel--language a {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 8px 9px;
	border: 1px solid transparent;
	border-radius: 9px;
	color: #274652;
	text-decoration: none;
}
.xk-quick-panel--language a:hover,
.xk-quick-panel--language a:focus-visible,
.xk-quick-panel--language a[aria-current="true"] { border-color: #c9ddd5; background: #edf8f4; color: #087f83; }

.xk-quick-modal {
	position: fixed;
	inset: 0;
	z-index: 2200;
	display: grid;
	place-items: center;
	width: auto;
	color: #0b2733;
}
.xk-quick-modal[hidden] { display: none !important; }
.xk-quick-modal__backdrop { position: absolute; inset: 0; background: rgb(8 25 31 / 58%); }
.xk-quick-modal__panel {
	position: relative;
	z-index: 1;
	width: min(340px, calc(100vw - 36px));
	box-sizing: border-box;
	padding: 26px;
	border-radius: 18px;
	background: #fffdf8;
	box-shadow: 0 28px 80px rgb(0 0 0 / 28%);
	text-align: center;
}
.xk-quick-modal__close {
	position: absolute;
	top: 9px;
	right: 10px;
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: 50%;
	background: #eef4f1;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}
.xk-quick-modal__panel strong { display: block; margin: 8px 0 16px; font-size: 20px; }
.xk-quick-modal__panel [data-xk-quick-qr-image] { display: grid; place-items: center; min-height: 220px; }
.xk-quick-modal__panel [data-xk-quick-qr-image] img { width: 220px; height: 220px; image-rendering: pixelated; touch-action: none; }
.xk-quick-modal__panel p { margin: 14px 0 0; color: #60717a; font-size: 13px; }
.xk-quick-modal__actions { display: none; justify-content: center; gap: 10px; margin-top: 16px; }
.xk-quick-modal__actions a,.xk-quick-modal__actions button { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 6px 12px; border: 1px solid #cbdad5; border-radius: 10px; background: #fff; color: #163742; font: inherit; font-weight: 650; text-decoration: none; cursor: pointer; }
.xk-quick-modal--mastodon .xk-quick-modal__panel { text-align: left; }
.xk-quick-modal--mastodon .xk-quick-modal__panel strong { padding-right: 30px; }
.xk-quick-modal--mastodon .xk-quick-modal__panel p { margin: 0 0 14px; line-height: 1.5; }
.xk-quick-modal--mastodon form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px; }
.xk-quick-modal--mastodon input { min-width: 0; height: 44px; box-sizing: border-box; padding: 8px 11px; border: 1px solid #bdd1cb; border-radius: 10px; background: #fff; color: #163742; font: inherit; }
.xk-quick-modal--mastodon form button { min-height: 44px; padding: 8px 15px; border: 0; border-radius: 10px; background: #6364ff; color: #fff; font: inherit; font-weight: 750; cursor: pointer; }
.xk-mastodon-error { grid-column: 1/-1; color: #b42318; font-size: 12px; }
body.xk-quick-qr-open { overflow: hidden; }

@media (max-width: 720px) {
	.xk-quick-tools { top: 57%; right: max(0px, env(safe-area-inset-right)); width: 42px; }
	.xk-quick-tool, .xk-quick-tool-wrap, .xk-quick-tool-wrap .xk-favorite-button { width: 40px; height: 42px; min-height: 42px; }
	.xk-quick-tools__rail { border-radius: 20px; }
	.xk-quick-tools__rail > :first-child { border-radius: 19px 19px 0 0; }
	.xk-quick-tools__rail > :last-child { border-radius: 0 0 19px 19px; }
	.xk-quick-panel { right: calc(100% + 8px); width: min(310px, calc(100vw - 64px)); padding: 14px; }
	.xk-quick-panel--search { top: 21px; }
	.xk-quick-share-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 7px; }
	.xk-quick-share-grid a,.xk-quick-share-grid button { font-size: 13px; }
	.xk-quick-modal__actions { display: flex; }
	.xk-quick-tool__tip { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.xk-quick-tools, .xk-quick-tool__tip { transition: none; }
}
