/* Βοηθός OurMoment (SHP 1.10.0) — ίδια παλέτα με το site (κρεμ / μελάνι / χρυσό). */
#shpcb{
	--cb-bg:#F8F4EF; --cb-card:#FFFDF9; --cb-ink:#2C2824; --cb-soft:#6b6258; --cb-gold:#C9A35E; --cb-gold-deep:#A8804A;
	--cb-line:rgba(44,40,36,.12);
	position:fixed; right:20px; bottom:20px; z-index:150;
	font-family:'Inter',system-ui,sans-serif; color:var(--cb-ink); line-height:1.45;
}
#shpcb *{ box-sizing:border-box; }
#shpcb button{ font-family:inherit; }

.shpcb-launcher{
	/* μίνι κάρτα πρόσκλησης (1.10.1, ζητήθηκε ρητά αντί για στρογγυλό κουμπί) */
	position:relative; z-index:2; display:block; width:66px; height:92px; padding:4px; border:none; cursor:pointer;
	background:#fff; border-radius:9px; box-shadow:0 12px 28px rgba(44,40,36,.28), 0 0 0 1px rgba(44,40,36,.06);
	transform:rotate(-5deg); animation:shpcbTilt 5s ease-in-out infinite; transition:transform .2s ease;
}
.shpcb-launcher:hover{ animation:none; transform:rotate(0) translateY(-3px); }
.shpcb-launcher:focus-visible{ outline:3px solid var(--cb-gold); outline-offset:4px; }
@keyframes shpcbTilt{ 0%,100%{ transform:rotate(-5deg); } 50%{ transform:rotate(-2deg) translateY(-3px); } }
.shpcb-mini{ position:absolute; inset:4px; display:block; border-radius:5px; overflow:hidden; background:linear-gradient(160deg,#f4ecdf,#e9dcc5); }
.shpcb-mini img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:top; opacity:0; transition:opacity .6s ease; }
.shpcb-mini img.on{ opacity:1; }
.shpcb-launcher::before{ /* χρυσό αστεράκι στη γωνία */
	content:'✦'; position:absolute; left:-8px; top:-8px; width:22px; height:22px; border-radius:50%; z-index:2;
	background:var(--cb-gold); color:#fff; font-size:11px; line-height:22px; text-align:center; box-shadow:0 2px 5px rgba(0,0,0,.18);
}
.shpcb-dot{ /* "ειδοποίηση" μέχρι να ανοίξει μία φορά */
	position:absolute; right:-8px; top:-8px; z-index:2; min-width:21px; height:21px; padding:0 5px; border-radius:11px;
	background:#C0392B; color:#fff; font:700 12px/21px 'Inter',sans-serif; text-align:center; box-shadow:0 0 0 2px #fff;
}
#shpcb.is-seen .shpcb-dot{ display:none; }
#shpcb.is-open .shpcb-launcher{ animation:none; transform:rotate(0) scale(.94); }

.shpcb-teaser{
	/* 1.11.2: στο desktop ΜΟΝΙΜΑ ορατή δίπλα στην κάρτα (ζητήθηκε ρητά). Στο κινητό βγαίνει
	   μετά από 2" και κρύβεται μόνη της μετά από 10", για να μην κρύβει τη σελίδα. */
	position:absolute; right:80px; bottom:28px; white-space:nowrap; cursor:pointer;
	background:var(--cb-ink); color:#fff; border-radius:999px;
	padding:11px 18px; font-size:15px; font-weight:600; letter-spacing:.01em; box-shadow:0 10px 26px rgba(44,40,36,.28);
	opacity:0; transform:translateY(6px); pointer-events:none; transition:opacity .35s ease, transform .35s ease;
}
.shpcb-teaser.is-show{ opacity:1; transform:none; pointer-events:auto; }
.shpcb-teaser:hover{ background:#000; }
.shpcb-teaser::after{ /* μικρό "βελάκι" προς την κάρτα */
	content:''; position:absolute; right:-5px; top:50%; width:10px; height:10px; margin-top:-5px; background:inherit; transform:rotate(45deg); border-radius:2px;
}
@media (min-width:561px){
	#shpcb:not(.is-open) .shpcb-teaser{ opacity:1; transform:none; pointer-events:auto; }
}
#shpcb.is-open .shpcb-teaser{ opacity:0; pointer-events:none; }

.shpcb-panel{
	position:absolute; right:0; bottom:108px; width:380px; height:min(600px, calc(100vh - 120px));
	background:var(--cb-bg); border:1px solid var(--cb-line); border-radius:20px; overflow:hidden;
	box-shadow:0 24px 60px rgba(44,40,36,.25);
	display:flex; flex-direction:column;
	opacity:0; transform:translateY(12px) scale(.98); transform-origin:bottom right; pointer-events:none;
	transition:opacity .25s ease, transform .25s ease;
}
#shpcb.is-open .shpcb-panel{ opacity:1; transform:none; pointer-events:auto; }

.shpcb-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:16px 18px; background:var(--cb-ink); color:#fff; }
.shpcb-head-txt strong{ display:block; font-family:'Space Grotesk','Inter',sans-serif; font-size:17px; letter-spacing:.01em; }
.shpcb-head-txt span{ display:block; font-size:12.5px; opacity:.75; margin-top:2px; }
.shpcb-close{ background:none; border:none; color:#fff; font-size:28px; line-height:1; cursor:pointer; opacity:.8; padding:0 4px; }
.shpcb-close:hover{ opacity:1; }

.shpcb-body{ flex:1; overflow-y:auto; padding:16px 14px 8px; display:flex; flex-direction:column; gap:10px; scroll-behavior:smooth; }
.shpcb-msg{ max-width:86%; padding:10px 13px; border-radius:16px; font-size:14.5px; white-space:pre-line; }
.shpcb-bot{ align-self:flex-start; background:var(--cb-card); border:1px solid var(--cb-line); border-bottom-left-radius:5px; }
.shpcb-me{ align-self:flex-end; background:var(--cb-gold); color:#fff; border-bottom-right-radius:5px; font-weight:500; }

.shpcb-cards{ display:flex; flex-direction:column; gap:10px; }
.shpcb-card{ display:flex; gap:12px; background:var(--cb-card); border:1px solid var(--cb-line); border-radius:14px; padding:10px; }
.shpcb-card img{ width:84px; height:118px; object-fit:cover; object-position:top; border-radius:8px; flex:none; background:#efe7d8; }
.shpcb-card.is-qr img{ object-fit:contain; object-position:center; background:#efe7d8; padding:3px; } /* κάρτα QR: ολόκληρη, για να φαίνεται το QR */
.shpcb-card-info{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.shpcb-card-info strong{ font-size:14.5px; }
.shpcb-card-info span{ font-size:12.5px; color:var(--cb-soft); }
.shpcb-card-btns{ display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; padding-top:6px; }

.shpcb-btn{
	display:inline-block; font-size:12.5px; font-weight:600; padding:7px 12px; border-radius:999px; cursor:pointer;
	border:1.5px solid var(--cb-ink); background:transparent; color:var(--cb-ink); text-decoration:none; line-height:1.2;
}
.shpcb-btn:hover{ background:var(--cb-ink); color:#fff; }
.shpcb-btn.is-solid{ background:var(--cb-ink); color:#fff; }
.shpcb-btn.is-solid:hover{ background:#000; }

.shpcb-chips{ display:flex; flex-wrap:wrap; gap:7px; padding:10px 14px 14px; border-top:1px solid var(--cb-line); background:var(--cb-bg); max-height:42%; overflow-y:auto; }
.shpcb-chips:empty{ display:none; }
.shpcb-chip{
	font-size:13.5px; font-weight:500; padding:8px 13px; border-radius:999px; cursor:pointer;
	border:1.5px solid var(--cb-gold); background:var(--cb-card); color:var(--cb-ink); text-align:left;
}
.shpcb-chip:hover{ background:#f3ead9; }
.shpcb-chip.is-main{ background:var(--cb-gold); border-color:var(--cb-gold); color:#fff; }
.shpcb-chip.is-main:hover{ background:var(--cb-gold-deep); border-color:var(--cb-gold-deep); }

.shpcb-form{ background:var(--cb-card); border:1px solid var(--cb-line); border-radius:14px; padding:14px; display:flex; flex-direction:column; gap:10px; }
.shpcb-field span{ display:block; font-size:12px; font-weight:600; color:var(--cb-soft); margin-bottom:4px; }
.shpcb-field input, .shpcb-field select, .shpcb-field textarea{
	width:100%; font:inherit; font-size:16px; /* 16px: όχι αυτόματο zoom στο iPhone */
	padding:9px 11px; border:1px solid var(--cb-line); border-radius:10px; background:#fff; color:var(--cb-ink);
}
.shpcb-field input:focus, .shpcb-field select:focus, .shpcb-field textarea:focus{ outline:none; border-color:var(--cb-gold); box-shadow:0 0 0 3px rgba(201,163,94,.18); }
.shpcb-field textarea{ resize:vertical; min-height:56px; }
.shpcb-note{ font-size:12px; color:var(--cb-soft); }
.shpcb-consent{ display:flex; gap:8px; align-items:flex-start; font-size:12.5px; color:var(--cb-ink); cursor:pointer; }
.shpcb-consent input{ margin:2px 0 0; width:16px; height:16px; accent-color:var(--cb-gold); flex:none; }
.shpcb-gdpr{ font-size:11.5px; }
.shpcb-gdpr a{ color:var(--cb-gold-deep); }
.shpcb-err{ font-size:13px; color:#b3412e; font-weight:600; }
.shpcb-err:empty{ display:none; }
.shpcb-send{ align-self:stretch; padding:11px; font-size:14px; }
.shpcb-send:disabled{ opacity:.6; cursor:default; }
.shpcb-hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; }

/* Κινητό: το παράθυρο γίνεται "φύλλο" από κάτω, σε όλο το πλάτος */
@media (max-width:560px){
	#shpcb{ right:14px; bottom:14px; }
	.shpcb-launcher{ width:58px; height:81px; }
	.shpcb-teaser{ right:72px; bottom:24px; font-size:14px; padding:10px 15px; }
	.shpcb-panel{
		position:fixed; left:0; right:0; bottom:0; width:auto; height:88vh; height:88dvh;
		border-radius:20px 20px 0 0; border-bottom:none;
	}
	#shpcb.is-open .shpcb-launcher{ display:none; }
}
@media (prefers-reduced-motion:reduce){
	.shpcb-panel, .shpcb-teaser, .shpcb-launcher, .shpcb-mini img{ transition:none; }
	.shpcb-launcher{ animation:none; }
	.shpcb-body{ scroll-behavior:auto; }
}
