:root { --mksprep-primary: #8222ee; --mksprep-yellow: #ffd400; }
.mksprep-core-chat { position: fixed; right: 18px; bottom: 18px; z-index: 999999; font-family: inherit; }
.mksprep-chat-launch { display:flex; align-items:center; gap:8px; border:0; border-radius:999px; padding:12px 17px; color:#fff; background:linear-gradient(135deg,var(--mksprep-primary),#a855f7); box-shadow:0 12px 34px #4a087f42; cursor:pointer; }
.mksprep-chat-launch span { color:var(--mksprep-yellow); font-size:18px; }
.mksprep-chat-panel { position:absolute; right:0; bottom:58px; width:min(390px,calc(100vw - 24px)); height:min(650px,calc(100vh - 100px)); display:flex; flex-direction:column; overflow:hidden; border:1px solid #e8daf7; border-radius:20px; background:#fff; box-shadow:0 24px 70px #25063e42; color:#241332; }
.mksprep-chat-panel[hidden], .mksprep-chat-lead[hidden], .mksprep-search-answer[hidden], .mksprep-search-more[hidden] { display:none; }
.mksprep-chat-panel header { display:flex; align-items:center; justify-content:space-between; padding:14px 16px; color:#fff; background:linear-gradient(135deg,var(--mksprep-primary),#a855f7); }
.mksprep-chat-panel header div { display:flex; flex-direction:column; } .mksprep-chat-panel header small { opacity:.82; }
.mksprep-chat-close { border:0; background:transparent; color:#fff; font-size:27px; cursor:pointer; }
.mksprep-chat-messages { flex:1; overflow:auto; padding:14px; background:#fbf8ff; }
.mksprep-message { display:flex; flex-direction:column; align-items:flex-start; margin:0 0 10px; }
.mksprep-message.is-user { align-items:flex-end; }
.mksprep-message p { max-width:88%; margin:0; padding:10px 12px; border-radius:14px; background:#fff; box-shadow:0 3px 12px #2d0e4320; white-space:pre-wrap; }
.mksprep-message.is-user p { color:#fff; background:var(--mksprep-primary); }
.mksprep-source-links { display:flex; flex-wrap:wrap; gap:6px; margin-top:7px; }
.mksprep-source-links a { max-width:280px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; border:1px solid var(--mksprep-primary); border-radius:999px; padding:5px 9px; color:var(--mksprep-primary); background:#fff; text-decoration:none; font-size:12px; }
.mksprep-chat-suggestions { display:flex; gap:6px; padding:8px 12px; overflow:auto; border-top:1px solid #eee2fa; }
.mksprep-chat-suggestions button { flex:0 0 auto; border:0; border-radius:999px; padding:6px 10px; color:#fff; background:var(--mksprep-primary); cursor:pointer; font-size:11px; }
.mksprep-chat-compose { display:flex; gap:8px; padding:10px 12px; border-top:1px solid #eee2fa; }
.mksprep-chat-compose textarea { flex:1; min-height:42px; max-height:92px; resize:none; border:1px solid #d8c7e9; border-radius:11px; padding:10px; }
.mksprep-chat-compose button, .mksprep-chat-lead button[type=submit] { border:0; border-radius:10px; padding:0 14px; color:#fff; background:var(--mksprep-primary); cursor:pointer; }
.mksprep-chat-lead { padding:14px; border-top:1px solid #eee2fa; } .mksprep-chat-lead p { margin:5px 0 10px; }
.mksprep-chat-lead input:not([type=checkbox]) { width:100%; box-sizing:border-box; margin:4px 0; padding:10px; border:1px solid #d8c7e9; border-radius:9px; }
.mksprep-chat-lead label { display:flex; gap:7px; margin:8px 0; font-size:12px; } .mksprep-chat-lead>div { display:flex; gap:8px; }
.mksprep-chat-lead button { padding:9px 12px; } .mksprep-chat-not-now { border:1px solid #d8c7e9; border-radius:9px; background:#fff; }
.mksprep-whatsapp { margin:0 12px 8px; padding:9px; border-radius:9px; color:#fff!important; background:#1fa855; text-align:center; text-decoration:none!important; font-weight:700; }
.mksprep-disclaimer { padding:0 12px 9px; color:#786d81; text-align:center; font-size:10px; }
.mksprep-core-chat.is-inline { position:relative; right:auto; bottom:auto; z-index:1; } .mksprep-core-chat.is-inline>.mksprep-chat-launch { display:none; }
.mksprep-core-chat.is-inline .mksprep-chat-panel { position:relative; right:auto; bottom:auto; width:100%; height:650px; }
.mksprep-core-chat.is-inline .mksprep-chat-close { display:none; }
.mksprep-core-search { width:100%; max-width:1000px; margin:24px auto; }
.mksprep-search-form { display:flex; gap:8px; padding:8px; border:1px solid #e2d3f2; border-radius:16px; background:#fff; box-shadow:0 10px 30px #3d0b5d12; }
.mksprep-search-form input { flex:1; min-width:0; border:0; outline:0; padding:11px 12px; font-size:16px; }
.mksprep-search-form button { border:0; border-radius:11px; padding:10px 18px; color:#fff; background:var(--mksprep-primary); cursor:pointer; font-weight:700; }
.mksprep-search-form .mksprep-search-ai { color:#2c2100; background:var(--mksprep-yellow); }
.mksprep-search-popover[hidden] { display:none; }
.mksprep-search-status { min-height:24px; margin:10px 3px 2px; color:#6c5b79; }
.mksprep-search-answer { margin:12px 0; padding:15px; border:1px solid #e2d3f2; border-radius:14px; background:#fbf8ff; }
.mksprep-search-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.mksprep-search-card { display:flex; gap:12px; min-width:0; padding:13px; border:1px solid #eadff4; border-radius:14px; background:#fff; }
.mksprep-search-card img { width:82px; height:82px; object-fit:cover; border-radius:10px; }
.mksprep-search-card div { min-width:0; } .mksprep-search-card small { display:block; color:#826b91; font-size:11px; }
.mksprep-search-card a { display:block; margin:2px 0 4px; color:#331249; font-weight:800; text-decoration:none; }
.mksprep-search-card p { margin:0; color:#685a72; font-size:13px; line-height:1.45; }
.mksprep-search-more { margin:15px auto 0; border:1px solid var(--mksprep-primary); border-radius:999px; padding:9px 18px; color:var(--mksprep-primary); background:#fff; cursor:pointer; }
.mksprep-search-fallback { margin-top:12px; }
.mksprep-core-search.js-ready .mksprep-search-fallback { display:none; }

/* Keep the desktop header search centred between the logo and social links. */
@media (min-width:1025px) {
	#main-header .site-header-main-section-left { min-width:0; }
	#main-header .site-header-main-section-left > .site-header-item[data-section="kadence_customizer_header_html"] { flex:1 1 auto; min-width:0; margin-left:18px; }
	#main-header .header-html,
	#main-header .header-html-inner { width:100%; min-width:0; }
	#main-header .mksprep-core-search { position:relative; z-index:1000; width:min(100%,640px); max-width:640px; margin:0 auto; }
	#main-header .mksprep-search-form { gap:5px; padding:3px; border-radius:13px; }
	#main-header .mksprep-search-form input { padding:6px 10px; font-size:14px; line-height:1.2; }
	#main-header .mksprep-search-form button { flex:0 0 auto; padding:6px 14px; border-radius:9px; white-space:nowrap; line-height:1.2; }
	#main-header .mksprep-search-popover { position:absolute; top:calc(100% + 10px); left:50%; width:min(760px,calc(100vw - 32px)); max-height:min(68vh,560px); margin:0; padding:14px; overflow-y:auto; overscroll-behavior:contain; transform:translateX(-50%); border:1px solid #e2d3f2; border-radius:16px; background:#fff; box-shadow:0 20px 50px #1905264d; }
	#main-header .mksprep-search-status { min-height:0; margin:0 2px 10px; font-size:13px; font-weight:700; }
	#main-header .mksprep-search-results { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
	#main-header .mksprep-search-card { align-items:center; min-height:82px; padding:8px; }
	#main-header .mksprep-search-card img { flex:0 0 66px; width:66px; height:66px; }
	#main-header .mksprep-search-card div { display:flex; align-items:center; }
	#main-header .mksprep-search-card a { display:-webkit-box; margin:0; overflow:hidden; color:#331249; font-size:15px; line-height:1.35; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
	#main-header .mksprep-search-card small,
	#main-header .mksprep-search-card p { display:none; }
	#main-header .mksprep-search-more { display:block; margin-top:12px; }
	#main-header .mksprep-search-more[hidden] { display:none; }
}

@media (min-width:1025px) and (max-width:1450px) {
	#main-header .site-header-main-section-left > .site-header-item[data-section="kadence_customizer_header_html"] { margin-left:12px; }
	#main-header .mksprep-search-form input { padding-right:6px; font-size:14px; }
	#main-header .mksprep-search-form button { padding-right:11px; padding-left:11px; }
	#main-header .mksprep-search-popover { left:0; transform:none; }
}

@media (max-width:600px) { .mksprep-core-chat:not(.is-inline) { right:10px; bottom:10px; } .mksprep-core-chat:not(.is-inline).is-open { inset:0; } .mksprep-core-chat:not(.is-inline).is-open>.mksprep-chat-launch { display:none; } .mksprep-core-chat:not(.is-inline) .mksprep-chat-panel { position:fixed; inset:0; width:100%; height:100%; border:0; border-radius:0; } .mksprep-search-form { flex-wrap:wrap; } .mksprep-search-form input { flex-basis:100%; } .mksprep-search-form button { flex:1; } .mksprep-search-results { grid-template-columns:1fr; } }

@media (max-width:1024px) {
	#main-header .mksprep-core-search { position:relative; }
	#main-header .mksprep-search-popover { position:absolute; z-index:1000; top:calc(100% + 8px); left:50%; width:calc(100vw - 20px); max-height:65vh; padding:12px; overflow-y:auto; transform:translateX(-50%); border:1px solid #e2d3f2; border-radius:14px; background:#fff; box-shadow:0 18px 42px #1905264d; }
	#main-header .mksprep-search-results { grid-template-columns:1fr; }
	#main-header .mksprep-search-card p,
	#main-header .mksprep-search-card small { display:none; }
	#mobile-header .header-html,
	#mobile-header .header-html-inner { width:100%; min-width:0; }
	#mobile-header .mksprep-core-search { position:relative; z-index:1000; width:min(100%,calc(100vw - 122px)); max-width:calc(100vw - 122px); margin:0; }
	#mobile-header .mksprep-search-form { flex-wrap:nowrap; gap:4px; padding:4px; border-radius:12px; }
	#mobile-header .mksprep-search-form input { flex:1 1 auto; flex-basis:auto; min-width:0; padding:8px 5px; font-size:11.5px; }
	#mobile-header .mksprep-search-form button { flex:0 0 auto; padding:8px 6px; border-radius:8px; white-space:nowrap; font-size:11.5px; }
	#mobile-header .mksprep-search-popover { position:fixed; z-index:99999; top:80px; left:8px; box-sizing:border-box; width:calc(100vw - 16px); max-height:65vh; margin:0; padding:10px; overflow-y:auto; overscroll-behavior:contain; transform:none; border:1px solid #e2d3f2; border-radius:14px; background:#fff; box-shadow:0 18px 42px #1905264d; }
	#mobile-header .mksprep-search-status { min-height:0; margin:0 2px 8px; font-size:12px; font-weight:700; }
	#mobile-header .mksprep-search-results { grid-template-columns:1fr; gap:8px; }
	#mobile-header .mksprep-search-card { align-items:center; min-height:68px; gap:10px; padding:7px; }
	#mobile-header .mksprep-search-card img { flex:0 0 58px; width:58px; height:58px; }
	#mobile-header .mksprep-search-card div { display:flex; flex:1 1 auto; align-items:center; min-width:0; }
	#mobile-header .mksprep-search-card a { display:-webkit-box; width:100%; min-width:0; margin:0; overflow:hidden; overflow-wrap:anywhere; font-size:14px; line-height:1.3; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
	#mobile-header .mksprep-search-card p,
	#mobile-header .mksprep-search-card small { display:none; }
	#mobile-header .mksprep-search-more { display:block; margin-top:10px; }
	#mobile-header .mksprep-search-more[hidden] { display:none; }
}
