/* Cookie-Zustimmung (shared/privacy_choice.php) und reCAPTCHA-Hinweis in Formularen (shared/recaptcha_hint.php).
   Dunkle Karte wie der Footer, Einstellungen hell abgesetzt. */

.ck{position:fixed;left:24px;bottom:24px;width:390px;max-width:calc(100vw - 32px);z-index:50;color:#fff;
  font-family:inherit;transition:transform .35s cubic-bezier(.2,.9,.3,1.2),opacity .25s}
.ck[hidden]{display:none}
.ck.ck-out{transform:translateY(30px);opacity:0;pointer-events:none}
.ck-mascot{position:absolute;right:-6px;top:-96px;width:132px;height:132px;animation:ck-peek .7s cubic-bezier(.2,.9,.3,1.3) both .15s}
.ck-arm{transform-origin:118px 62px;animation:ck-wave 1.6s ease-in-out .9s 2}
@keyframes ck-peek{from{transform:translateY(40px) rotate(8deg);opacity:0}to{transform:none;opacity:1}}
@keyframes ck-wave{0%,100%{transform:rotate(0)}25%{transform:rotate(-16deg)}75%{transform:rotate(12deg)}}
@media(prefers-reduced-motion:reduce){.ck-mascot,.ck-arm{animation:none}}

.ck-card{position:relative;border-radius:22px;padding:24px 24px 20px;background:linear-gradient(160deg,#123744,#0b2530);
  border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 60px rgba(11,37,48,.32)}
.ck-x{position:absolute;right:12px;top:12px;width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:#9fb7c1;
  cursor:pointer;display:grid;place-items:center}
.ck-x:hover{background:rgba(255,255,255,.08);color:#fff}
.ck h2{margin:0 0 8px;font-size:23px;font-weight:800;letter-spacing:-.02em;line-height:1.2;padding-right:30px}
.ck p{margin:0;font-size:14.5px;line-height:1.55;color:#b9d0d8}
.ck-btns{display:flex;gap:10px;margin-top:18px}
.ck-btns button{flex:1;font:inherit;font-size:15px;font-weight:700;line-height:1.2;border-radius:99px;padding:12px 10px;cursor:pointer;transition:transform .15s}
.ck-btns button:hover{transform:translateY(-2px)}
.ck-acc{border:0;color:#fff;background:linear-gradient(90deg,#ff8a3d,#ff4500)}
.ck-rej{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.75)}
.ck-save{display:none}
.ck.ck-open .ck-acc-all{display:none}
.ck.ck-open .ck-save{display:block}
.ck-links{display:flex;justify-content:space-between;gap:10px;margin-top:14px;font-size:13.5px;color:#cfe3ea}
.ck-links button,.ck-links a{font:inherit;font-weight:600;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;color:inherit}
.ck-links button:hover,.ck-links a:hover{color:#fff}

/* Einstellungen: helle Fläche in der dunklen Karte */
.ck-set{display:none;margin-top:16px;border-radius:14px;overflow:hidden;background:#fff;color:#0b2530}
.ck.ck-open .ck-set{display:block}
.ck-row{display:flex;gap:12px;align-items:center;padding:12px 14px}
.ck-row + .ck-row{border-top:1px solid #e5ebee}
.ck-row > div{flex:1}
.ck-row b{display:block;font-size:14.5px}
.ck-row small{display:block;font-size:12.5px;line-height:1.4;margin-top:2px;color:#5b6b75}
.ck-sw{position:relative;width:44px;height:26px;flex:none}
.ck-sw input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;z-index:1}
.ck-sw span{position:absolute;inset:0;border-radius:99px;background:#b3c1c8;transition:background .2s}
.ck-sw span:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;
  box-shadow:0 1px 3px rgba(0,0,0,.2)}
.ck-sw input:checked + span{background:#ff4500}
.ck-sw input:checked + span:after{transform:translateX(18px)}
.ck-sw input:disabled{cursor:default}
.ck-sw input:disabled + span{opacity:.55}
.ck-sw input:focus-visible + span{outline:2px solid #ff4500;outline-offset:2px}

/* Kleiner Keks unten links: öffnet die Einstellungen wieder */
.ck-fab{position:fixed;left:20px;bottom:20px;width:52px;height:52px;border-radius:50%;border:0;padding:0;cursor:pointer;z-index:40;
  background:#fff;box-shadow:0 8px 24px rgba(11,37,48,.22);display:grid;place-items:center;transition:transform .15s}
.ck-fab[hidden]{display:none}
.ck-fab:hover{transform:scale(1.08) rotate(-8deg)}
.ck-fab svg{width:38px;height:38px}

@media(max-width:620px){
 .ck{left:12px;right:12px;bottom:12px;width:auto;max-width:none}
 .ck-mascot{width:104px;height:104px;top:-74px}
 .ck h2{font-size:21px}
 .ck-fab{width:46px;height:46px;left:14px;bottom:14px}
 .ck-fab svg{width:34px;height:34px}
}

/* reCAPTCHA in Formularen */
.rc-hint{display:flex;gap:14px;align-items:flex-start;margin:18px 0;padding:16px 18px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#0b2530}
.rc-hint[hidden],.rc-note[hidden]{display:none}
.rc-ic{width:40px;height:40px;border-radius:11px;background:#fff;color:#ff4500;display:grid;place-items:center;flex:none}
.rc-hint b{display:block;font-size:15.5px}
.rc-hint p{margin:4px 0 12px;font-size:14px;color:#33444e;line-height:1.5}
.rc-hint button{font:inherit;font-weight:700;font-size:14px;background:#0b2530;color:#fff;border:0;border-radius:10px;padding:9px 14px;cursor:pointer}
.rc-hint button:hover{background:#123744}
.rc-hint small{display:block;margin-top:10px;color:#5b6b75;font-size:13px;line-height:1.45}
.rc-note{margin:10px 0;font-size:13px;color:#5b6b75}
.rc-note a{text-decoration:underline}
form[data-recaptcha-sitekey] [type=submit]:disabled{opacity:.45;cursor:not-allowed}
/* Google-Abzeichen ausgeblendet; der Hinweis steht stattdessen im Formular (von Google so erlaubt). */
.grecaptcha-badge{visibility:hidden}
