/* ELBA — Consultanți regionali: pill produs, popup, card checkout. */
.elba-repline,.elba-repmodal *,.elba-repcheckout *{box-sizing:border-box;}

/* ── Pill pe pagina de produs ── */
.elba-repline{
	display:flex; align-items:center; gap:13px; width:100%; text-align:left;
	margin:16px 0 0; padding:13px 15px; cursor:pointer;
	background:#fff; border:1px solid #e4ebf2; border-radius:13px;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
	transition:background .16s,border-color .16s;
}
.elba-repline:hover{background:#f8fbfe; border-color:#ccdcec;}
/* fără stările colorate ale temei la click/focus (butonul rămâne discret) */
.elba-repline:active,
.elba-repline:focus,
.elba-repline:focus-visible{background:#f8fbfe !important; border-color:#ccdcec !important; color:inherit !important; outline:none !important; box-shadow:none !important;}
.elba-repline:active .elba-repline__tx b,
.elba-repline:focus .elba-repline__tx b{color:#12212e !important;}
.elba-repline:active .elba-repline__tx small,
.elba-repline:focus .elba-repline__tx small{color:#7c8894 !important;}
.elba-repline:focus-visible{box-shadow:0 0 0 3px rgba(0,90,166,.13) !important;}

/* ── Facepile: avatarele agenților suprapuse (poză sau inițiale pe gradient) ── */
.elba-repline__faces{display:flex; align-items:center; flex:0 0 auto; position:relative; padding-right:2px;}
.elba-repline__face{
	position:relative; width:48px; height:48px; border-radius:50%; border:2px solid #fff;
	background:#e3eefb; color:#fff; font-size:12px; font-weight:800; letter-spacing:.02em;
	display:flex; align-items:center; justify-content:center; overflow:hidden; flex:0 0 auto;
	transition:margin .18s ease, transform .18s ease;
}
.elba-repline__face + .elba-repline__face{margin-left:-14px;}
.elba-repline__face.has-photo img{width:100%; height:100%; object-fit:cover; object-position:center top; display:block;}
.elba-repline__face.is-more{background:#eef2f7; color:#48555f; font-size:12.5px;}
/* avatarul din față — cel mai mare; RULEAZĂ prin agenți (crossfade între slide-uri) */
.elba-repline__face.is-lead{width:56px; height:56px;}
.elba-repline__slide{
	position:absolute; inset:0; border-radius:50%; opacity:0; transition:opacity .32s ease;
	display:flex; align-items:center; justify-content:center; color:#fff; font-size:15px; font-weight:800; letter-spacing:.02em;
}
.elba-repline__slide.is-on{opacity:1;}
.elba-repline__slide img{width:100%; height:100%; object-fit:cover; object-position:center top; display:block;}
/* primul avatar deasupra, restul în spate */
.elba-repline__faces .elba-repline__face:nth-child(1){z-index:5;}
.elba-repline__faces .elba-repline__face:nth-child(2){z-index:4;}
.elba-repline__faces .elba-repline__face:nth-child(3){z-index:3;}
.elba-repline__faces .elba-repline__face:nth-child(4){z-index:2;}
.elba-repline__faces .elba-repline__face:nth-child(5){z-index:1;}
/* punct verde „disponibil" pe avatarul din față (56px) */
.elba-repline__faces::after{content:""; position:absolute; left:42px; bottom:2px; width:11px; height:11px; border-radius:50%; background:#22c55e; border:2px solid #fff; z-index:6;}
/* la hover pe pill, avatarele se desfac ușor */
.elba-repline:hover .elba-repline__face + .elba-repline__face{margin-left:-7px;}
.elba-repline__tx{flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:1px;}
.elba-repline__tx b{font-size:14px; font-weight:700; color:#12212e; letter-spacing:-.01em; line-height:1.3;}
/* subtitlul rulează sincron cu poza — o linie, fără salt de layout */
.elba-repline__tx small{font-size:12px; color:#7c8894; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; transition:opacity .17s ease;}
.elba-repline__tx small.is-fade{opacity:0;}
.elba-repline__who{font-weight:700; color:#48555f;}
.elba-repline__go{flex:0 0 auto; color:#94a6b5;}
.elba-repline__go svg{width:18px; height:18px;}

/* ── Popup ── */
.elba-repmodal{position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; padding:20px; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;}
.elba-repmodal__ov{position:absolute; inset:0; background:rgba(12,24,38,.5); backdrop-filter:blur(2px); opacity:0; transition:opacity .25s;}
.elba-repmodal.is-in .elba-repmodal__ov{opacity:1;}
.elba-repmodal__box{
	position:relative; width:100%; max-width:480px; max-height:90vh; overflow-y:auto;
	background:#fff; border-radius:20px; padding:26px 26px 28px;
	box-shadow:0 30px 80px -20px rgba(10,22,40,.55);
	transform:translateY(14px) scale(.98); opacity:0; transition:transform .28s cubic-bezier(.22,.9,.3,1), opacity .28s;
}
.elba-repmodal.is-in .elba-repmodal__box{transform:none; opacity:1;}
/* doar X-ul, fără casetă */
.elba-repmodal__x{position:absolute; top:14px; right:14px; width:34px; height:34px; border:0; background:transparent; color:#8a97a4; cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0; transition:color .15s;}
.elba-repmodal__x:hover{background:transparent; color:#12212e;}
.elba-repmodal__x svg{width:22px; height:22px;}
/* fără header în popup — direct selectorul de județ (spațiu sus cât X-ul) */
/* ── Selector județ: căutare + listă cu agentul alocat (fără <select> nativ) ── */
/* margine sus cât butonul X, ca să nu se suprapună peste câmpul de căutare */
.elba-reppick{margin:30px 0 0;}
.elba-repsearch{position:relative; margin:0 0 10px;}
.elba-repsearch svg{position:absolute; left:14px; top:50%; transform:translateY(-50%); width:17px; height:17px; color:#a3aeb8; pointer-events:none; z-index:1;}
/* !important: tema suprascrie padding/border pe input-uri */
.elba-repsearch input{
	width:100% !important; box-sizing:border-box !important;
	padding:13px 14px 13px 40px !important;
	font-size:16px !important; /* 16px: fără auto-zoom pe iOS la focus */
	color:#12212e !important; font-family:inherit !important; line-height:1.4 !important;
	border:1px solid #e8edf3 !important; border-radius:12px !important;
	background:#f7fafc !important; outline:none !important; box-shadow:none !important;
	margin:0 !important; min-height:0 !important;
	transition:border-color .15s, background .15s;
}
.elba-repsearch input::placeholder{color:#a9b4bf;}
.elba-repsearch input:focus{border-color:#c9dbec !important; background:#fff !important; box-shadow:none !important;}

.elba-replist{max-height:min(46vh,330px); overflow-y:auto; -webkit-overflow-scrolling:touch; margin:0 -6px; padding:2px 6px 2px;}
/* desktop: listă mai lungă, fără spațiu alb gol sub ea */
@media (min-width:781px){
	.elba-replist{max-height:min(64vh,560px);}
}
.elba-replist::-webkit-scrollbar{width:8px;}
.elba-replist::-webkit-scrollbar-thumb{background:#e2e8ef; border-radius:8px; border:2px solid #fff;}
.elba-reprow{
	display:flex; align-items:center; gap:11px; width:100%; text-align:left;
	padding:8px 10px; margin:0; border:0; background:transparent; border-radius:11px;
	cursor:pointer; font-family:inherit; transition:background .13s;
}
.elba-reprow:hover{background:#f5f8fc;}
.elba-reprow:active,.elba-reprow:focus{background:#f5f8fc; outline:none;}
.elba-reprow.is-sel{background:#eef5fc;}
.elba-reprow__av{
	flex:0 0 auto; width:34px; height:34px; border-radius:50%; overflow:hidden;
	display:flex; align-items:center; justify-content:center;
	color:#fff; font-size:11.5px; font-weight:800; letter-spacing:.02em; background:#e3eefb;
}
.elba-reprow__av img{width:100%; height:100%; object-fit:cover; object-position:center top; display:block;}
.elba-reprow__t{flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:1px;}
.elba-reprow__t b{font-size:14.5px; font-weight:700; color:#12212e; line-height:1.25;}
.elba-reprow__t small{font-size:12px; color:#96a1ac; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.elba-reprow__go{flex:0 0 auto; color:#ccd5de; display:flex;}
.elba-reprow__go svg{width:16px; height:16px;}
.elba-repempty{padding:26px 12px; text-align:center; color:#a3aeb8; font-size:13.5px;}

/* bara „Județul tău: X · Agent  [Schimbă]" după alegere */
.elba-repbar{display:flex; align-items:center; justify-content:space-between; gap:12px; margin:28px 0 14px;}
/* [hidden] trebuie să bată display:flex de mai sus (altfel bara goală ocupa spațiu) */
.elba-repbar[hidden],.elba-reppick[hidden],.elba-repmodal__res[hidden]{display:none !important;}
.elba-repbar__t{font-size:13.5px; color:#8a97a4; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.elba-repbar__t b{color:#12212e; font-weight:700;}
.elba-repbar__who{color:#5a6a78;}
.elba-repbar__b{flex:0 0 auto; border:0; background:transparent; color:#005AA6; font-size:13.5px; font-weight:700; cursor:pointer; padding:6px 0; font-family:inherit;}
.elba-repbar__b:hover{text-decoration:underline;}

/* ── Card reprezentant ── */
.elba-repc{display:flex; gap:14px; align-items:flex-start; padding:16px; background:#fff; border:1px solid #e4ebf2; border-radius:14px;}
.elba-repc + .elba-repc,.elba-repc.is-sm{margin-top:0;}
.elba-repc.is-dir{background:#fafcfe; border-style:dashed;}
/* stilul facepile și pe cardul de reprezentant: gradient distinct (inline, per persoană) + punct verde */
.elba-repc__avwrap{position:relative; flex:0 0 auto;}
.elba-repc__dot{position:absolute; right:1px; bottom:1px; width:11px; height:11px; border-radius:50%; background:#22c55e; border:2px solid #fff;}
.elba-repc__av{width:90px; height:90px; border-radius:50%; background:linear-gradient(135deg,#005AA6,#0a78d0); color:#fff; font-size:28px; font-weight:800; letter-spacing:.02em; display:flex; align-items:center; justify-content:center;}
.elba-repc__av.is-dir{background:linear-gradient(135deg,#5a6a78,#7c8894);}
.elba-repc__av.has-photo{width:90px; height:90px; background:#eef2f6; padding:0; overflow:hidden;}
.elba-repc__av.has-photo img{width:100%; height:100%; object-fit:cover; object-position:center top; display:block;}
/* pozele au ACEEAȘI mărime peste tot (90px) — inclusiv pe cardul mic al directorului */
.elba-repc.is-sm .elba-repc__av{width:90px; height:90px; font-size:28px;}
.elba-repc.is-sm .elba-repc__av.has-photo{width:90px; height:90px;}
.elba-repc__body{flex:1 1 auto; min-width:0;}
.elba-repc__name{font-size:16px; font-weight:800; color:#12212e; letter-spacing:-.01em; line-height:1.2;}
.elba-repc.is-sm .elba-repc__name{font-size:15px;}
.elba-repc__role{font-size:12.5px; color:#7c8894; margin:2px 0 10px; font-weight:500;}
.elba-repc__acts{display:flex; flex-direction:column; gap:7px;}
.elba-repc__a{display:inline-flex; align-items:center; gap:9px; font-size:13.5px; font-weight:600; color:#28323c; text-decoration:none; padding:2px 0;}
.elba-repc__a svg{width:16px; height:16px; flex:0 0 auto; color:#94a6b5;}
.elba-repc__a.is-tel:hover,.elba-repc__a.is-mail:hover{color:#005AA6;}
.elba-repc__a.is-tel:hover svg,.elba-repc__a.is-mail:hover svg{color:#005AA6;}
.elba-repc__a.is-wa{color:#1f9d55;}
.elba-repc__a.is-wa svg{color:#25D366;}
.elba-repc__a.is-wa:hover{color:#178043;}
.elba-repc__a span{white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.elba-repc__also{font-size:12px; color:#9aa6b2; text-align:center; margin:14px 0 10px; position:relative;}
.elba-repc__also::before,.elba-repc__also::after{content:""; position:absolute; top:50%; width:calc(50% - 82px); height:1px; background:#e8edf2;}
.elba-repc__also::before{left:0;} .elba-repc__also::after{right:0;}

/* ── Card la checkout ── */
.elba-repcheckout{grid-column:1 / -1; flex:0 0 100%; width:100%; box-sizing:border-box; margin:16px 0 6px; padding:16px 18px; background:#f6f9fc; border:1px solid #e4ebf2; border-radius:14px; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;}
.elba-repcheckout__hd{display:flex; align-items:center; gap:9px; font-size:13px; color:#5a6a78; margin:0 0 12px;}
.elba-repcheckout__hd svg{width:18px; height:18px; color:#005AA6; flex:0 0 auto;}
.elba-repcheckout__hd b{color:#12212e;}
.elba-repcheckout .elba-repc{background:#fff; padding:16px;}
/* Desktop: contactele pe orizontală, card întins pe toată lățimea. */
@media (min-width:781px){
	.elba-repcheckout .elba-repc__acts{flex-direction:row; flex-wrap:wrap; gap:10px 26px; align-items:center;}
	.elba-repcheckout .elba-repc__a span{max-width:none;}
}

@media (max-width:600px){
	.elba-repmodal__box{padding:22px 18px 24px;}
}

/* ── Banda „Consultantul nostru" pe mobil: nimic tăiat, nimic revărsat ── */
@media (max-width:768px){
	.elba-repline{max-width:100%; overflow:hidden; padding:12px 14px !important; gap:10px !important;}
	.elba-repline *{min-width:0;}
	.elba-repline img, .elba-repline [class*="av"]{width:34px !important; height:34px !important;}
	.elba-repline b, .elba-repline strong, .elba-repline span{
		font-size:13.5px !important; line-height:1.35 !important;
		white-space:normal !important; overflow-wrap:break-word;
	}
	.elba-repline svg{flex:0 0 auto;}
}
