/* RODO Cookie Consent v2.0.0 */
:root {
    --rcc-accent:     #2563eb;
    --rcc-radius:     12px;
    --rcc-bg:         #ffffff;
    --rcc-bg-rgb:     255, 255, 255;
    --rcc-text:       #1f2937;
    --rcc-muted:      #6b7280;
    --rcc-border:     #e5e7eb;
    --rcc-shadow:     0 4px 28px rgba(0,0,0,.13),0 1px 4px rgba(0,0,0,.06);
    --rcc-z:          999999;
    --rcc-ease:       .25s cubic-bezier(.4,0,.2,1);
    --rcc-opacity:    1;
    --rcc-max-width:  720px;
    --rcc-blur:       blur(0px);
}
[data-rcc-theme="dark"] {
    --rcc-bg:    #1f2937;
    --rcc-bg-rgb:31, 41, 55;
    --rcc-text:  #f9fafb;
    --rcc-muted: #9ca3af;
    --rcc-border:#374151;
    --rcc-shadow:0 4px 28px rgba(0,0,0,.45);
}
.rcc-hidden{display:none!important}

/* ── Banner ────────────────────────────────────────── */
.rcc-banner{
    position:fixed;z-index:var(--rcc-z);
    background:rgba(var(--rcc-bg-rgb), var(--rcc-opacity));color:var(--rcc-text);
    box-shadow:var(--rcc-shadow);border-radius:var(--rcc-radius);
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    font-size:14px;line-height:1.5;
    animation:rccUp var(--rcc-ease) both;
    /* backdrop-filter dla efektu frosted glass przy opacity < 1 */
    backdrop-filter:var(--rcc-blur);
}
.rcc-banner[data-position="bottom-bar"]  {bottom:0;left:0;right:0;border-radius:var(--rcc-radius) var(--rcc-radius) 0 0;border-top:3px solid var(--rcc-accent)}
.rcc-banner[data-position="bottom-left"] {bottom:20px;left:20px;max-width:var(--rcc-max-width);border-top:3px solid var(--rcc-accent)}
.rcc-banner[data-position="bottom-right"]{bottom:20px;right:20px;max-width:var(--rcc-max-width);border-top:3px solid var(--rcc-accent)}
@keyframes rccUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

.rcc-banner__inner{display:flex;align-items:center;gap:20px;padding:18px 24px;flex-wrap:wrap}
.rcc-banner[data-position="bottom-left"] .rcc-banner__inner,
.rcc-banner[data-position="bottom-right"] .rcc-banner__inner{flex-direction:column;align-items:stretch}
.rcc-banner__content{flex:1;min-width:200px}
.rcc-banner__title{font-weight:700;font-size:15px;margin:0 0 5px}
.rcc-banner__desc{margin:0 0 8px;color:var(--rcc-muted)}
.rcc-banner__links{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}
.rcc-banner__links a{color:var(--rcc-accent);text-decoration:underline;font-size:13px}
.rcc-banner__links a:hover{opacity:.8}
.rcc-banner__actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;flex-shrink:0}
.rcc-banner[data-position="bottom-left"] .rcc-banner__actions,
.rcc-banner[data-position="bottom-right"] .rcc-banner__actions{flex-direction:column}
.rcc-banner[data-position="bottom-left"] .rcc-btn,
.rcc-banner[data-position="bottom-right"] .rcc-btn{width:100%}

/* ── Buttons ───────────────────────────────────────── */
.rcc-btn{
    display:inline-flex;align-items:center;justify-content:center;
    padding:9px 18px;border-radius:calc(var(--rcc-radius)*.6);
    border:2px solid transparent;font-size:13px;font-weight:600;
    cursor:pointer;transition:all var(--rcc-ease);white-space:nowrap;
    line-height:1;font-family:inherit;
}
.rcc-btn--primary  {background:var(--rcc-accent);color:#fff;border-color:var(--rcc-accent)}
.rcc-btn--primary:hover{filter:brightness(1.1);transform:translateY(-1px)}
.rcc-btn--secondary{background:transparent;color:var(--rcc-muted);border-color:var(--rcc-border)}
.rcc-btn--secondary:hover{border-color:var(--rcc-muted);color:var(--rcc-text)}
.rcc-btn--outline  {background:transparent;color:var(--rcc-accent);border-color:var(--rcc-accent)}
.rcc-btn--outline:hover{background:var(--rcc-accent);color:#fff}

/* ── Modal ─────────────────────────────────────────── */
.rcc-modal{
    position:fixed;inset:0;z-index:calc(var(--rcc-z) + 1);
    display:flex;align-items:center;justify-content:center;padding:16px;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;
    animation:rccFade .2s both;
}
@keyframes rccFade{from{opacity:0}to{opacity:1}}
.rcc-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(3px)}
.rcc-modal__box{
    position:relative;background:rgba(var(--rcc-bg-rgb), var(--rcc-opacity));color:var(--rcc-text);
    border-radius:var(--rcc-radius);box-shadow:var(--rcc-shadow);
    width:100%;max-width:min(var(--rcc-max-width), 90vw);max-height:90vh;overflow:hidden;
    display:flex;flex-direction:column;
    animation:rccUp .25s both;
    backdrop-filter:var(--rcc-blur);
}
.rcc-modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--rcc-border);flex-shrink:0}
.rcc-modal__title{margin:0;font-size:17px;font-weight:700}
.rcc-modal__close{background:none;border:none;font-size:18px;color:var(--rcc-muted);cursor:pointer;padding:4px 8px;border-radius:6px;line-height:1;transition:all var(--rcc-ease)}
.rcc-modal__close:hover{background:var(--rcc-border);color:var(--rcc-text)}
.rcc-modal__body{overflow-y:auto;padding:20px 24px;flex:1}
.rcc-modal__body::-webkit-scrollbar{width:6px}
.rcc-modal__body::-webkit-scrollbar-track{background:var(--rcc-border);border-radius:3px}
.rcc-modal__body::-webkit-scrollbar-thumb{background:var(--rcc-muted);border-radius:3px}
.rcc-modal__footer{padding:16px 24px;border-top:1px solid var(--rcc-border);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;flex-shrink:0}
.rcc-modal__policy-link{color:var(--rcc-accent);font-size:13px;text-decoration:underline}
.rcc-modal__btns{display:flex;gap:8px}
.rcc-powered-by{text-align:center;font-size:11px;color:var(--rcc-muted);padding:8px;margin:0}
.rcc-powered-by a{color:var(--rcc-accent)}

/* ── Category rows ─────────────────────────────────── */
.rcc-category{border:1px solid var(--rcc-border);border-radius:calc(var(--rcc-radius)*.7);padding:14px 16px;margin-bottom:10px;transition:border-color var(--rcc-ease)}
.rcc-category:last-child{margin-bottom:0}
.rcc-category:has(.rcc-toggle__input:not([disabled]):checked){border-color:var(--rcc-accent)}
.rcc-category__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rcc-category__info{flex:1}
.rcc-category__name{display:block;font-weight:600;margin-bottom:4px;font-size:14px}
.rcc-category__desc{display:block;color:var(--rcc-muted);font-size:13px;line-height:1.5}

/* ── Toggle ────────────────────────────────────────── */
.rcc-toggle{display:flex;align-items:center;gap:6px;flex-shrink:0;cursor:pointer;user-select:none}
.rcc-toggle--locked{cursor:default;opacity:.7}
.rcc-toggle__input{position:absolute;opacity:0;width:0;height:0}
.rcc-toggle__slider{position:relative;display:inline-block;width:44px;height:24px;background:var(--rcc-border);border-radius:12px;transition:background var(--rcc-ease);flex-shrink:0}
.rcc-toggle__slider::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform var(--rcc-ease);box-shadow:0 1px 4px rgba(0,0,0,.2)}
.rcc-toggle__input:checked~.rcc-toggle__slider{background:var(--rcc-accent)}
.rcc-toggle__input:checked~.rcc-toggle__slider::after{transform:translateX(20px)}
.rcc-toggle__locked-label{font-size:12px;color:var(--rcc-muted);white-space:nowrap}

/* ── Re-open button ────────────────────────────────── */
.rcc-reopen-btn{
    position:fixed;bottom:20px;left:20px;z-index:calc(var(--rcc-z) - 1);
    background:var(--rcc-bg);color:var(--rcc-muted);
    border:1px solid var(--rcc-border);border-radius:50%;
    width:44px;height:44px;cursor:pointer;box-shadow:var(--rcc-shadow);
    display:flex;align-items:center;justify-content:center;
    transition:all var(--rcc-ease);
}
.rcc-reopen-btn:hover{color:var(--rcc-accent);border-color:var(--rcc-accent);transform:scale(1.1)}

/* ── iFrame placeholder ────────────────────────────── */
.rcc-iframe-placeholder{
    display:flex;align-items:center;justify-content:center;
    background:var(--rcc-border, #f3f4f6);
    border:2px dashed var(--rcc-muted, #9ca3af);
    border-radius:calc(var(--rcc-radius, 12px)*.7);
    min-height:200px;width:100%;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
.rcc-iframe-placeholder__inner{
    display:flex;flex-direction:column;align-items:center;
    text-align:center;padding:32px 24px;gap:10px;
    color:var(--rcc-text,#1f2937);
}
.rcc-iframe-placeholder__icon svg{opacity:.5}
.rcc-iframe-placeholder__label{margin:0;font-size:16px;color:var(--rcc-text,#1f2937)}
.rcc-iframe-placeholder__msg{margin:0;font-size:13px;color:var(--rcc-muted,#6b7280);max-width:320px}
.rcc-iframe-placeholder__btn{margin-top:6px}

/* ── Focus ─────────────────────────────────────────── */
.rcc-btn:focus-visible,.rcc-modal__close:focus-visible,
.rcc-toggle__input:focus-visible~.rcc-toggle__slider{outline:2px solid var(--rcc-accent);outline-offset:2px}

/* ── Mobile ────────────────────────────────────────── */
@media(max-width:640px){
    .rcc-banner[data-position="bottom-left"],
    .rcc-banner[data-position="bottom-right"]{left:8px;right:8px;max-width:calc(100vw - 16px);bottom:8px}
    .rcc-banner__inner{padding:12px 14px;gap:12px}
    .rcc-banner[data-position="bottom-bar"] .rcc-banner__inner{padding:12px 14px}
    .rcc-modal__box{max-height:85vh}
    .rcc-modal__footer{flex-direction:column;align-items:stretch}
    .rcc-modal__btns{flex-direction:column}
    .rcc-modal__btns .rcc-btn{width:100%}
}
