/* CPS Widerruf – Formular & Einstiege. Farben via CSS-Variablen, sonst dezente Defaults. */
:root {
    --cps-wd-accent: #c49944;
    --cps-wd-bg: #c49944;
    --cps-wd-text: #ffffff;
    --cps-wd-bar-bg: #1c1c1c;
}

/* ---- Formular ---- */
.cps-wd-form-wrap { max-width: 640px; margin: 0 auto; }
.cps-wd-form .cps-wd-row { display: flex; flex-direction: column; margin: 0 0 16px; }
.cps-wd-form label { font-weight: 600; margin-bottom: 6px; }
.cps-wd-form input[type="text"],
.cps-wd-form input[type="email"],
.cps-wd-form textarea {
    width: 100%;
    padding: 11px 14px;
    border: 1px solid #d8d8d8;
    border-radius: 6px;
    font-size: 1em;
}
.cps-wd-form input:focus,
.cps-wd-form textarea:focus {
    outline: none;
    border-color: var(--cps-wd-accent);
    box-shadow: 0 0 0 2px rgba(196, 153, 68, .18);
}

/* Honeypot unsichtbar, aber für Bots befüllbar (nicht display:none). */
.cps-wd-hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px; height: 1px; overflow: hidden;
}

.cps-wd-privacy { font-size: .9em; margin: 4px 0 16px; }
.cps-wd-privacy a { color: var(--cps-wd-accent); }

.cps-wd-btn {
    display: inline-block;
    background: var(--cps-wd-bg);
    color: var(--cps-wd-text);
    border: none;
    border-radius: 6px;
    padding: 13px 30px;
    font-size: 1em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
    cursor: pointer;
}
.cps-wd-btn:hover { filter: brightness(1.06); }

/* ---- Statusmeldungen ---- */
.cps-wd-notice { padding: 14px 18px; border-radius: 6px; margin: 0 0 22px; font-size: .95em; }
.cps-wd-notice--ok { background: #eef9f0; border-left: 4px solid #3fa45b; color: #1f5130; }
.cps-wd-notice--error { background: #fdeeee; border-left: 4px solid #cc4b4b; color: #7a2a2a; }

/* ---- Einstiege ---- */
.cps-wd-entry {
    display: inline-block;
    background: var(--cps-wd-bg);
    color: var(--cps-wd-text);
    text-decoration: none;
    font-weight: 600;
    border-radius: 6px;
    padding: 10px 22px;
    white-space: nowrap;
}
.cps-wd-entry:hover { filter: brightness(1.06); color: var(--cps-wd-text); }

/* Footer-Leiste über volle Breite */
.cps-wd-bar {
    background: var(--cps-wd-bar-bg);
    text-align: center;
    padding: 14px 16px;
}

/* Sticky-Button unten rechts */
.cps-wd-sticky { position: fixed; right: 18px; bottom: 18px; z-index: 9990; }
.cps-wd-sticky .cps-wd-entry { box-shadow: 0 4px 14px rgba(0,0,0,.22); }

/* Seitlicher Tab am rechten Rand */
.cps-wd-tab { position: fixed; right: 0; top: 45%; z-index: 9990; }
.cps-wd-tab .cps-wd-entry {
    transform-origin: right center;
    transform: rotate(-90deg) translateY(-100%);
    border-radius: 6px 6px 0 0;
}
