/* RepairSuite Consent – Banner, Einstellungsdialog, Platzhalter. Gestaltung passend zum Theme. */
.rs-cmp,.rs-cmp-modal,.rs-cmp-ph,.rs-cmp-fab{--c-text:#0A1230;--c-text-2:#3A4668;--c-line:rgba(20,34,84,.12);--c-accent:#2E63F6;--c-grad:linear-gradient(120deg,#2E63F6 0%,#4A7BFF 40%,#12C6D6 100%);font-family:"Plus Jakarta Sans",system-ui,sans-serif;color:var(--c-text);line-height:1.55;-webkit-font-smoothing:antialiased}
.rs-cmp *,.rs-cmp-modal *,.rs-cmp-ph *{box-sizing:border-box}
.rs-cmp[hidden],.rs-cmp-modal[hidden]{display:none!important}
.rs-cmp{position:fixed;left:16px;bottom:16px;z-index:9990;width:min(560px,calc(100vw - 32px))}
.rs-cmp-box{padding:22px 22px 18px;border-radius:24px;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 0 0 1px rgba(20,34,84,.08),0 40px 80px -30px rgba(10,20,60,.55);animation:rs-cmp-in .35s cubic-bezier(.2,.7,.2,1)}
@keyframes rs-cmp-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.rs-cmp-h{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:17px;font-weight:700;letter-spacing:-.015em}
.rs-cmp-h svg{width:22px;height:22px;color:var(--c-accent);flex:none}
.rs-cmp-t{margin:0;font-size:14.5px;color:var(--c-text-2)}
.rs-cmp-links{margin:10px 0 0;font-size:13.5px;color:var(--c-text-2)}
.rs-cmp-links a{color:#1B44C8;text-decoration:underline;text-underline-offset:2px}
.rs-cmp-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}
.rs-cmp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 14px;border:0;border-radius:13px;font:600 14.5px/1.2 "Plus Jakarta Sans",system-ui,sans-serif;color:#fff;background:#1B44C8;box-shadow:0 10px 24px -14px rgba(46,99,246,.8);cursor:pointer;text-align:center;transition:transform .2s,background .2s}
.rs-cmp-btn:hover{background:#2E63F6;transform:translateY(-1px)}
.rs-cmp-btn--ghost{background:#fff;color:var(--c-text);box-shadow:inset 0 0 0 1.5px rgba(20,34,84,.18)}
.rs-cmp-btn--ghost:hover{background:#F4F6FC}
.rs-cmp-btn:focus-visible,.rs-cmp-x:focus-visible,.rs-cmp-switch input:focus-visible+span,.rs-cmp-svc summary:focus-visible,.rs-cmp-dialog:focus-visible{outline:3px solid #2E63F6;outline-offset:3px}
.rs-cmp-dialog:focus{outline:none}
.rs-cmp-modal{position:fixed;inset:0;z-index:9995;display:flex;align-items:center;justify-content:center;padding:16px}
.rs-cmp-backdrop{position:absolute;inset:0;background:rgba(7,11,30,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.rs-cmp-dialog{position:relative;width:min(640px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:28px;border-radius:28px;background:#fff;box-shadow:0 40px 80px -30px rgba(7,11,30,.6)}
.rs-cmp-mh{margin:0 0 8px;padding-right:50px;font-size:24px;font-weight:700;letter-spacing:-.03em;line-height:1.2}
.rs-cmp-x{position:absolute;top:16px;right:16px;width:44px;height:44px;border:0;border-radius:13px;background:rgba(10,18,48,.05);display:grid;place-items:center;cursor:pointer;color:var(--c-text)}
.rs-cmp-x svg{width:18px;height:18px}
.rs-cmp-cats{display:grid;gap:10px;margin-top:18px}
.rs-cmp-cat{padding:16px 18px;border-radius:18px;background:#F4F6FC;box-shadow:inset 0 0 0 1px var(--c-line)}
.rs-cmp-cat[data-empty="1"]{opacity:.85}
.rs-cmp-cat-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rs-cmp-cat-h h3{margin:0;font-size:16px;font-weight:650}
.rs-cmp-cat-d{margin:6px 0 0;font-size:14px;color:var(--c-text-2)}
.rs-cmp-switch{position:relative;display:inline-flex;align-items:center;flex:none;min-width:48px;min-height:44px;cursor:pointer}
.rs-cmp-switch input{position:absolute;opacity:0;width:48px;height:28px;margin:0;cursor:pointer}
.rs-cmp-switch span{display:block;width:48px;height:28px;border-radius:999px;background:#C5CCE0;transition:background .2s;position:relative}
.rs-cmp-switch span::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(10,18,48,.25);transition:transform .2s}
.rs-cmp-switch input:checked+span{background:#1B44C8}
.rs-cmp-switch input:checked+span::after{transform:translateX(20px)}
.rs-cmp-switch input:disabled+span{background:#7A93D9;cursor:not-allowed}
.rs-cmp-switch--sm{min-width:40px}
.rs-cmp-switch--sm input,.rs-cmp-switch--sm span{width:40px;height:24px}
.rs-cmp-switch--sm span::after{width:18px;height:18px}
.rs-cmp-switch--sm input:checked+span::after{transform:translateX(16px)}
.rs-cmp-svc-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid var(--c-line)}
.rs-cmp-svc{flex:1;font-size:14px}
.rs-cmp-svc summary{cursor:pointer;font-weight:600;min-height:32px;display:flex;align-items:center}
.rs-cmp-svc dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:8px 0 0;font-size:13.5px;color:var(--c-text-2)}
.rs-cmp-svc dt{font-weight:600;color:var(--c-text)}
.rs-cmp-svc dd{margin:0;overflow-wrap:anywhere}
.rs-cmp-svc a{color:#1B44C8}
.rs-cmp-actions--modal{margin-top:20px}
.rs-cmp-open{overflow:hidden}
.rs-cmp-fab{position:fixed;left:16px;bottom:16px;z-index:9980;width:48px;height:48px;border:0;border-radius:50%;display:grid;place-items:center;background:#fff;color:#1B44C8;box-shadow:0 0 0 1px rgba(20,34,84,.1),0 14px 30px -12px rgba(10,20,60,.45);cursor:pointer}
.rs-cmp-fab svg{width:22px;height:22px}
/* Platzhalter für blockierte Inhalte */
.rs-cmp-ph{position:relative;display:grid;place-items:center;width:100%;min-height:240px;aspect-ratio:16/9;padding:22px;border-radius:20px;background:radial-gradient(90% 80% at 0% 0%,rgba(91,134,255,.28),transparent 60%),radial-gradient(80% 80% at 100% 100%,rgba(82,201,240,.24),transparent 60%),#E7ECF9;box-shadow:inset 0 0 0 1px rgba(20,34,84,.1);text-align:center}
.rs-cmp-ph-in{max-width:460px}
.rs-cmp-ph-h{margin:0 0 6px;font-size:17px;font-weight:700}
.rs-cmp-ph-t{margin:0;font-size:14px;color:var(--c-text-2)}
.rs-cmp-ph-b{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}
.rs-cmp-ph-l{display:inline-block;margin-top:10px;font-size:13px;color:#1B44C8}
.elementor-widget-video .rs-cmp-ph{position:absolute;inset:0;z-index:2;aspect-ratio:auto;min-height:0}
.rs-consent-table table{width:100%;border-collapse:collapse;margin:12px 0 24px;font-size:15px}
.rs-consent-table th,.rs-consent-table td{text-align:left;vertical-align:top;padding:10px 8px;border-top:1px solid rgba(20,34,84,.12)}
.rs-consent-table th{font-weight:600}
@media (max-width:700px){
	.rs-cmp{left:8px;right:8px;bottom:8px;width:auto}
	.rs-cmp-actions{grid-template-columns:minmax(0,1fr)}
	.rs-cmp-dialog{padding:22px 18px}
	.rs-cmp-mh{font-size:21px}
}
@media (prefers-reduced-motion:reduce){.rs-cmp-box{animation:none}.rs-cmp-btn,.rs-cmp-switch span,.rs-cmp-switch span::after{transition:none}}
