/* Külső bővítmények (sütibanner, csomagpont-választó) a Textilbirodalom arculatában */

/* ---------- Sütibanner (CookieYes) ---------- */
.cky-consent-container.cky-banner-bottom {
	left: 16px !important; right: 16px !important; bottom: 16px !important; width: auto !important;
	max-width: 1000px; margin-inline: auto;
	border-radius: 26px !important; border: 1.5px solid var(--tb-sand) !important;
	background: var(--tb-white) !important; box-shadow: 0 18px 54px rgba(47, 58, 47, .22) !important; overflow: hidden;
	max-height: calc(100vh - 32px); overflow-y: auto;
}
.cky-consent-bar { background: transparent !important; border: 0 !important; padding: 24px 28px !important; }
.cky-consent-container .cky-title {
	font-family: var(--tb-font-head, 'Nunito', sans-serif) !important; font-weight: 800 !important; font-size: 21px !important;
	line-height: 1.15 !important; letter-spacing: -.3px; color: var(--tb-ink) !important; margin: 0 0 8px !important;
}
.cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-des p {
	font-family: var(--tb-font-body, 'DM Sans', sans-serif) !important; font-size: 14.5px !important; line-height: 1.55 !important; color: var(--tb-muted) !important;
}
.cky-consent-container .cky-notice-des a { color: var(--tb-ink) !important; text-decoration: underline; }
.cky-notice-btn-wrapper { gap: 10px !important; align-items: center; }

/* Gombok: egyforma méret; az elfogadás és az elutasítás egyenrangúan jól látszik */
.cky-consent-container .cky-btn, .cky-modal .cky-btn, .cky-preference-center .cky-btn {
	min-height: 48px !important; padding: 0 24px !important; border-radius: 999px !important; border-width: 2px !important; border-style: solid !important;
	font-family: var(--tb-font-body, 'DM Sans', sans-serif) !important; font-weight: 700 !important; font-size: 14.5px !important; letter-spacing: 0 !important;
	opacity: 1 !important; transition: background .15s, color .15s, border-color .15s;
}
.cky-btn.cky-btn-accept { background: var(--tb-ink) !important; border-color: var(--tb-ink) !important; color: var(--tb-bg) !important; }
.cky-btn.cky-btn-accept:hover { background: var(--tb-sage) !important; border-color: var(--tb-sage) !important; }
.cky-btn.cky-btn-reject { background: transparent !important; border-color: var(--tb-ink) !important; color: var(--tb-ink) !important; }
.cky-btn.cky-btn-reject:hover { background: var(--tb-ink) !important; color: var(--tb-bg) !important; }
.cky-btn.cky-btn-customize, .cky-btn.cky-btn-preferences { background: transparent !important; border-color: var(--tb-sand) !important; color: var(--tb-ink) !important; }
.cky-btn.cky-btn-customize:hover, .cky-btn.cky-btn-preferences:hover { border-color: var(--tb-sage) !important; background: var(--tb-sand-pale) !important; }
.cky-consent-container :focus-visible, .cky-modal :focus-visible { outline: 3px solid var(--tb-sage) !important; outline-offset: 2px; }

/* Beállító ablak */
.cky-modal .cky-preference-center, .cky-preference-center {
	border-radius: 26px !important; background: var(--tb-white) !important; color: var(--tb-ink) !important; font-family: var(--tb-font-body, 'DM Sans', sans-serif) !important;
}
.cky-preference-center .cky-preference-title, .cky-preference-center .cky-accordion-header .cky-accordion-btn {
	font-family: var(--tb-font-head, 'Nunito', sans-serif) !important; color: var(--tb-ink) !important; font-weight: 800 !important;
}
.cky-preference-center .cky-accordion { border-color: var(--tb-sand) !important; }
.cky-preference-center .cky-always-active { color: var(--tb-sage) !important; font-weight: 700 !important; }
.cky-switch input[type="checkbox"]:checked { background: var(--tb-sage) !important; }
.cky-footer-wrapper, .cky-prefrence-btn-wrapper { border-color: var(--tb-sand) !important; background: var(--tb-white) !important; }

/* Lebegő „süti-beállítás" gomb */
.cky-btn-revisit-wrapper { background: var(--tb-ink) !important; border-radius: 50% !important; box-shadow: 0 6px 18px rgba(47, 58, 47, .25) !important; }

@media (max-width: 640px) {
	.cky-consent-container.cky-banner-bottom { left: 10px !important; right: 10px !important; bottom: 10px !important; border-radius: 22px !important; max-height: 62vh; }
	.cky-consent-bar { padding: 18px 18px 16px !important; }
	.cky-consent-container .cky-title { font-size: 18px !important; margin-bottom: 6px !important; }
	.cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-des p { font-size: 13px !important; line-height: 1.5 !important; }
	/* egy oszlop, teljes szélesség: a hosszú „Az összes elfogadása" felirat se törjön két sorba */
	.cky-notice-btn-wrapper { display: grid !important; grid-template-columns: 1fr; gap: 8px !important; margin-top: 12px !important; }
	.cky-notice-btn-wrapper .cky-btn { width: 100% !important; margin: 0 !important; min-height: 44px !important; padding: 0 12px !important; white-space: nowrap; }
	.cky-notice-btn-wrapper .cky-btn-accept { order: 1 !important; }
	.cky-notice-btn-wrapper .cky-btn-reject { order: 2 !important; }
	.cky-notice-btn-wrapper .cky-btn-customize { order: 3 !important; }
}

/* ---------- Csomagpont-választó (Hungarian Pickup Points) ---------- */
.vp-woo-pont-modal { border-radius: 26px !important; overflow: hidden; box-shadow: 0 24px 70px rgba(47, 58, 47, .3) !important; font-family: var(--tb-font-body, 'DM Sans', sans-serif); }
.vp-woo-pont-modal-sidebar { border-radius: 26px 0 0 26px !important; background: var(--tb-white); }
.vp-woo-pont-modal-sidebar-search-field { font-family: var(--tb-font-body, 'DM Sans', sans-serif) !important; color: var(--tb-ink) !important; }
.vp-woo-pont-modal-sidebar-result { border-radius: 14px !important; }
@media (max-width: 760px) { .vp-woo-pont-modal, .vp-woo-pont-modal-sidebar { border-radius: 20px !important; } }
