/* ============================================================
   Rupor Consent Manager — Cookie Banner
   ============================================================ */

.rcm-banner {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    z-index: 1000010;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: #fff;
    background: #1c1c1c;
    box-shadow: 0 -2px 20px rgba(0,0,0,.3);
    transform: translateY(100%);
    transition: transform .35s ease;
}
.rcm-banner--visible { transform: translateY(0); }

.rcm-banner__content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 24px;
}

.rcm-banner__text { margin-bottom: 14px; }

.rcm-banner__link {
    color: #d1b88d;
    text-decoration: underline;
    margin-left: 6px;
}
.rcm-banner__link:hover { color: #fff; }

/* Buttons */
.rcm-banner__actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }

.rcm-btn {
    display: inline-block;
    padding: 10px 24px;
    border: none; border-radius: 3px;
    font-size: 14px; font-weight: 500;
    cursor: pointer;
    transition: background .2s, color .2s;
    line-height: 1.4;
    white-space: nowrap;
}
.rcm-btn--accept       { background: #b98e48; color: #fff; }
.rcm-btn--accept:hover { background: #a07a3a; color: #fff; }
.rcm-btn--reject       { background: #444; color: #fff; }
.rcm-btn--reject:hover { background: #555; }
.rcm-btn--settings       { background: transparent; color: #d1b88d; border: 1px solid #d1b88d; }
.rcm-btn--settings:hover { background: #d1b88d; color: #1c1c1c; }

/* Settings panel */
.rcm-banner__settings-title { font-size: 16px; font-weight: 600; margin-bottom: 14px; }

.rcm-category {
    margin-bottom: 12px;
    padding: 10px 14px;
    background: #2a2a2a;
    border-radius: 4px;
}
.rcm-category__label { display: flex; align-items: center; gap: 8px; cursor: pointer; font-weight: 500; }
.rcm-category__checkbox { width: 18px; height: 18px; accent-color: #b98e48; cursor: pointer; }
.rcm-category__checkbox:disabled { opacity: .6; cursor: default; }
.rcm-category__name { font-size: 15px; }
.rcm-category__desc { margin: 4px 0 0 26px; font-size: 13px; color: #aaa; }

/* Footer link */
.rcm-footer-link-wrap { text-align: center; padding: 8px 0; }
.rcm-open-settings { cursor: pointer; }

/* CF7 checkboxes */
.rcm-checkbox-label { display: flex; align-items: flex-start; gap: 8px; cursor: pointer; font-size: 14px; line-height: 1.4; }
.rcm-checkbox { margin-top: 3px; width: 16px; height: 16px; flex-shrink: 0; }
.rcm-checkbox-text a { text-decoration: underline; }

/* Policy page meta */
.rcm-doc-meta { margin-bottom: 16px; padding: 10px 16px; background: #f7f7f7; border-left: 3px solid #b98e48; font-size: 14px; color: #555; }

/* Responsive */
@media (max-width: 768px) {
    .rcm-banner__content { padding: 16px; }
    .rcm-banner__actions { flex-direction: column; align-items: stretch; }
    .rcm-btn { text-align: center; padding: 12px 16px; }
    .rcm-category__desc { margin-left: 0; margin-top: 6px; }
}
