/* Infinito Chat Widget — everything scoped under .infc */

.infc{
	position:fixed;
	bottom:20px;
	z-index:99990;
	font-family:inherit;
	line-height:1.5;
}
.infc--right{right:20px;}
.infc--left{left:20px;}

/* ---- Launcher ---- */

.infc__launcher{
	display:inline-flex;
	align-items:center;
	gap:8px;
	padding:12px 20px;
	border:0;
	border-radius:999px;
	background:var(--infc-color,#e2621b);
	color:#fff;
	font-size:15px;
	font-weight:600;
	cursor:pointer;
	box-shadow:0 6px 20px rgba(0,0,0,.18);
	transition:transform .15s ease, box-shadow .15s ease;
}
.infc__launcher:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.22);}
.infc__launcher:focus-visible{outline:3px solid rgba(0,0,0,.35);outline-offset:2px;}
.infc__launcher-icon{display:inline-flex;}
.infc__dot{
	width:9px;height:9px;border-radius:50%;
	background:#ff3b30;
	box-shadow:0 0 0 2px #fff;
	margin-left:2px;
}
.infc.is-open .infc__dot{display:none;}

/* ---- Panel ---- */

.infc__panel{
	width:320px;
	max-width:calc(100vw - 40px);
	margin-bottom:12px;
	background:#fff;
	border-radius:16px;
	overflow:hidden;
	box-shadow:0 18px 50px rgba(0,0,0,.22);
	animation:infc-in .18s ease-out;
}
.infc__panel[hidden]{display:none;}

@keyframes infc-in{
	from{opacity:0;transform:translateY(10px);}
	to{opacity:1;transform:translateY(0);}
}
@media (prefers-reduced-motion:reduce){
	.infc__panel{animation:none;}
	.infc__launcher{transition:none;}
}

.infc__head{
	display:flex;
	align-items:center;
	gap:12px;
	padding:16px 18px;
	background:var(--infc-color,#e2621b);
	color:#fff;
}
.infc__avatar{border-radius:50%;object-fit:cover;flex:0 0 auto;}
.infc__head-text{display:flex;flex-direction:column;min-width:0;}
.infc__title{font-size:16px;font-weight:700;}
.infc__subtitle{font-size:12.5px;opacity:.9;}
.infc__close{
	margin-left:auto;
	background:transparent;border:0;
	color:#fff;font-size:24px;line-height:1;
	cursor:pointer;padding:0 2px;opacity:.85;
}
.infc__close:hover{opacity:1;}

.infc__body{padding:18px 18px 4px;}
.infc__bubble{
	margin:0;
	background:#f1f1f3;
	border-radius:14px;
	padding:12px 14px;
	font-size:14.5px;
	color:#2b2b2b;
}

.infc__actions{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:10px;
	padding:16px 18px 18px;
}
.infc__actions > :only-child{grid-column:1 / -1;}

.infc__btn{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding:10px 12px;
	border-radius:10px;
	background:var(--infc-btn,#555);
	color:#fff !important;
	font-size:14.5px;
	font-weight:600;
	text-decoration:none !important;
	transition:filter .15s ease;
}
.infc__btn:hover{filter:brightness(1.07);}
.infc__btn:focus-visible{outline:3px solid rgba(0,0,0,.35);outline-offset:2px;}

/* ---- Vidljivost po uređaju ---- */

@media (max-width:767px){
	.infc--no-mobile{display:none;}
	.infc{bottom:16px;}
	.infc--right{right:16px;}
	.infc--left{left:16px;}
	.infc__launcher{padding:11px 16px;font-size:14px;}
}
@media (min-width:768px){
	.infc--no-desktop{display:none;}
}
