:root {
	--smt-navy: var(--sp-primary, #000f59);
	--smt-navy-bright: #071c6b;
	--smt-orange: var(--sp-accent, #ff7614);
	--smt-white: #ffffff;
	--smt-ease: cubic-bezier(.22, 1, .36, 1);
}

/* Minimal shell overrides are at the end of this stylesheet. */

.smt-launcher[hidden] {
	display: none !important;
}

.smt-launcher {
	position: fixed;
	left: 22px;
	bottom: max(22px, env(safe-area-inset-bottom));
	z-index: 2147483500;
	display: flex;
	direction: ltr;
	align-items: center;
	width: 78px;
	height: 78px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	box-shadow: none;
	color: var(--smt-white);
	font-family: var(--sptm-font, "yekanbakh", "Yekan Bakh", "IRANYekanX", "Vazirmatn", Tahoma, Arial, sans-serif);
	cursor: pointer;
	opacity: 0;
	transform: translate3d(0, 16px, 0) scale(.9);
	transform-origin: left center;
	pointer-events: none;
	isolation: isolate;
	-webkit-tap-highlight-color: transparent;
}

.smt-launcher.is-ready {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
	pointer-events: auto;
	transition: width .56s var(--smt-ease), transform .5s var(--smt-ease), opacity .3s ease, background-color .38s ease, box-shadow .38s ease;
}

.smt-launcher__aura {
	position: absolute;
	inset: -8px;
	z-index: -2;
	border-radius: 999px;
	background: radial-gradient(circle at 39px 39px, rgba(255,118,20,.2), rgba(0,15,89,.08) 38%, transparent 69%);
	opacity: .78;
	transform: scale(.9);
	transition: inset .5s var(--smt-ease), opacity .3s ease, transform .5s var(--smt-ease);
}

.smt-launcher__orb {
	position: relative;
	z-index: 3;
	display: grid;
	place-items: center;
	width: 78px;
	height: 78px;
	flex: 0 0 78px;
	border: 1px solid rgba(0, 15, 89, .12);
	border-radius: 50%;
	background:
		radial-gradient(circle at 34% 22%, rgba(255,255,255,.98) 0 13%, rgba(255,255,255,.68) 28%, transparent 52%),
		linear-gradient(145deg, #ffffff 0%, #eef2fa 76%, #e4eaf5 100%);
	box-shadow:
		0 18px 34px rgba(0,15,89,.2),
		0 5px 12px rgba(0,15,89,.1),
		inset 0 2px 2px rgba(255,255,255,.96),
		inset 0 -4px 9px rgba(0,15,89,.07);
	overflow: visible;
	transform: translateZ(0);
	transition: transform .5s var(--smt-ease), box-shadow .35s ease;
}

.smt-launcher__orb::before {
	content: "";
	position: absolute;
	inset: 6px;
	border: 1px solid rgba(255,118,20,.22);
	border-radius: 50%;
	box-shadow: inset 0 0 13px rgba(255,118,20,.08);
	pointer-events: none;
}

.smt-launcher__orbit {
	position: absolute;
	inset: -4px;
	z-index: -1;
	border: 1px solid rgba(255,118,20,.29);
	border-right-color: transparent;
	border-bottom-color: rgba(0,15,89,.1);
	border-radius: 50%;
	transform: rotate(-18deg);
	transition: transform .8s var(--smt-ease), opacity .3s ease;
}

.smt-launcher__robot {
	position: relative;
	z-index: 2;
	display: block;
	width: 69px;
	height: 69px;
	transform: perspective(440px) rotateX(var(--smt-look-y, 0deg)) rotateY(var(--smt-look-x, 0deg)) translate3d(0, -1px, 8px);
	transform-origin: 50% 57%;
	transition: transform .12s ease-out;
	pointer-events: none;
}

.smt-launcher__robot canvas {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	user-select: none;
}

.smt-launcher__online {
	position: absolute;
	top: 6px;
	right: 6px;
	z-index: 4;
	width: 12px;
	height: 12px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: #35ca78;
	box-shadow: 0 2px 7px rgba(0,0,0,.16);
}

.smt-launcher__copy {
	position: relative;
	z-index: 2;
	display: grid;
	direction: rtl;
	gap: 0;
	width: 0;
	min-width: 0;
	margin: 0;
	text-align: right;
	white-space: nowrap;
	opacity: 0;
	transform: translate3d(-9px, 0, 0);
	overflow: hidden;
	transition: width .5s var(--smt-ease), margin .5s var(--smt-ease), opacity .25s ease .04s, transform .5s var(--smt-ease);
}

.smt-launcher__copy strong {
	font-size: 14px;
	font-weight: 850;
	line-height: 1.65;
}

.smt-launcher__copy small {
	color: rgba(255,255,255,.7);
	font-size: 10.5px;
	font-weight: 500;
	line-height: 1.6;
}

.smt-launcher__opening-text {
	display: none;
}

.smt-launcher__arrow {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 0;
	height: 32px;
	border-radius: 50%;
	background: rgba(255,255,255,.09);
	opacity: 0;
	overflow: hidden;
	transform: translateX(-8px);
	transition: width .4s var(--smt-ease), opacity .22s ease, transform .45s var(--smt-ease), background-color .2s ease;
}

.smt-launcher__arrow svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

@media (hover: hover) and (pointer: fine) {
	.smt-launcher:hover,
	.smt-launcher:focus-visible {
		width: 272px;
		background: linear-gradient(135deg, var(--smt-navy-bright) 0%, var(--smt-navy) 64%, #000a3d 100%);
		box-shadow: 0 24px 55px rgba(0,15,89,.26), 0 7px 18px rgba(0,15,89,.14), inset 0 1px 0 rgba(255,255,255,.11);
	}

	.smt-launcher:hover .smt-launcher__aura,
	.smt-launcher:focus-visible .smt-launcher__aura {
		inset: -10px;
		opacity: 1;
		transform: scale(1.02);
	}

	.smt-launcher:hover .smt-launcher__orb,
	.smt-launcher:focus-visible .smt-launcher__orb {
		transform: translate3d(-2px, -3px, 0) scale(1.04);
		box-shadow: 0 21px 38px rgba(0,15,89,.24), 0 7px 15px rgba(0,15,89,.12), inset 0 2px 2px #fff, inset 0 -4px 9px rgba(0,15,89,.07);
	}

	.smt-launcher:hover .smt-launcher__orbit,
	.smt-launcher:focus-visible .smt-launcher__orbit {
		transform: rotate(115deg);
	}

	.smt-launcher:hover .smt-launcher__copy,
	.smt-launcher:focus-visible .smt-launcher__copy {
		width: 137px;
		margin-inline: 14px 8px;
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}

	.smt-launcher:hover .smt-launcher__arrow,
	.smt-launcher:focus-visible .smt-launcher__arrow {
		width: 32px;
		opacity: 1;
		transform: translateX(0);
	}

	.smt-launcher:hover .smt-launcher__arrow:hover {
		background: var(--smt-orange);
	}
}

.smt-launcher:focus-visible {
	outline: 3px solid rgba(255,118,20,.32);
	outline-offset: 5px;
}

.smt-launcher:active {
	transform: translate3d(0, 1px, 0) scale(.975);
	transition-duration: .1s;
}

.smt-launcher.is-activating {
	width: min(296px, calc(100vw - 44px));
	background: linear-gradient(135deg, var(--smt-navy-bright), var(--smt-navy) 62%, #000a3d);
	box-shadow: 0 26px 64px rgba(0,15,89,.3), inset 0 1px 0 rgba(255,255,255,.11);
	transform: translate3d(0, -5px, 0) scale(1.025);
}

.smt-launcher.is-activating .smt-launcher__copy {
	width: 143px;
	margin-inline: 14px 8px;
	opacity: 1;
	transform: none;
}

.smt-launcher.is-activating .smt-launcher__arrow {
	width: 32px;
	opacity: 1;
	transform: none;
}

.smt-launcher.is-activating .smt-launcher__arrow svg {
	animation: smt-arrow-forward .62s var(--smt-ease) both;
}

.smt-launcher.is-activating .smt-launcher__idle-text {
	display: none;
}

.smt-launcher.is-activating .smt-launcher__opening-text {
	display: inline;
}

.smt-launcher.is-activating .smt-launcher__orb {
	transform: translate3d(2px, -5px, 0) scale(1.07);
}

.smt-launcher.is-chat-open {
	opacity: 0;
	transform: translate3d(0, 20px, 0) scale(.93);
	pointer-events: none;
}

@keyframes smt-arrow-forward {
	0% { transform: translateX(0); opacity: 1; }
	45% { transform: translateX(13px); opacity: 0; }
	55% { transform: translateX(-10px); opacity: 0; }
	100% { transform: translateX(0); opacity: 1; }
}

@media (max-width: 639px) {
	.smt-launcher {
		left: 16px;
		bottom: max(16px, env(safe-area-inset-bottom));
		width: 70px;
		height: 70px;
	}

	.smt-launcher__orb {
		width: 70px;
		height: 70px;
		flex-basis: 70px;
	}

	.smt-launcher__robot {
		width: 62px;
		height: 62px;
	}

	.smt-launcher.is-activating {
		width: min(262px, calc(100vw - 32px));
	}

	.smt-launcher.is-activating .smt-launcher__copy {
		width: 138px;
		margin-inline: 12px 7px;
	}

	.smt-launcher.is-activating .smt-launcher__arrow {
		width: 28px;
		height: 28px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.smt-launcher,
	.smt-launcher *,
	.smt-launcher::before {
		animation: none !important;
		transition-duration: .01ms !important;
	}

	.smt-launcher__robot {
		transform: none !important;
	}
}

/* 1.3: quiet surface, protruding bust and no decorative rings. */
.smt-launcher__aura,.smt-launcher__orbit,.smt-launcher__online,.smt-launcher__arrow{display:none!important}
.smt-launcher__orb::before{display:none}
.smt-launcher,.smt-launcher__orb{box-sizing:border-box}
.smt-launcher__orb{background:#f3f5f8;border:1px solid #e4e8ef;box-shadow:0 5px 15px rgba(0,15,89,.10);overflow:visible}
.smt-launcher__robot{position:absolute;width:110px;height:110px;left:50%;bottom:0;transform:translateX(-50%)!important;transition:none}
.smt-launcher__robot canvas{width:100%;height:100%;max-width:none;display:block}
.smt-launcher__copy small{font-size:11px}
.smt-launcher.is-activating{background:#000f59;box-shadow:0 8px 22px rgba(0,15,89,.13)}
@media(hover:hover) and (pointer:fine){
 .smt-launcher:hover,.smt-launcher:focus-visible{width:245px;background:#000f59;box-shadow:0 8px 22px rgba(0,15,89,.13)}
 .smt-launcher:hover .smt-launcher__orb,.smt-launcher:focus-visible .smt-launcher__orb{transform:none;box-shadow:none}
}
@media(max-width:639px){.smt-launcher__robot{width:90px;height:90px}}
.smt-launcher__orb{background:#000f59;border-color:#000f59}
@media(min-width:640px){.smt-launcher__robot{width:98px;height:98px}}

/* 1.3.3: smaller launcher, with the established proportions preserved. */
.smt-launcher {
	width: 64px;
	height: 64px;
}

.smt-launcher__orb {
	width: 64px;
	height: 64px;
	flex-basis: 64px;
}

@media (min-width: 640px) {
	.smt-launcher__robot {
		width: 82px;
		height: 82px;
	}
}

@media (max-width: 639px) {
	.smt-launcher {
		width: 60px;
		height: 60px;
	}

	.smt-launcher__orb {
		width: 60px;
		height: 60px;
		flex-basis: 60px;
	}

	.smt-launcher__robot {
		width: 76px;
		height: 76px;
	}
}
