/* ── COOKIE CONSENT MODAL - blocheaza site-ul pana la alegere ── */
#cookie-consent-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.cc-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(5, 5, 8, 0.85);
    backdrop-filter: blur(4px);
}

.cc-modal {
    position: relative;
    background: #13131e;
    border: 1px solid #2a2a35;
    border-radius: 16px;
    padding: 26px;
    max-width: 440px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0,0,0,.5);
}

.cc-modal-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}
.cc-modal-icon { font-size: 24px; }
.cc-modal-header h3 { font-size: 16px; color: #fff; margin: 0; }

.cc-modal-desc {
    font-size: 12.5px;
    color: #9a9aa5;
    line-height: 1.6;
    margin: 0 0 18px;
}
.cc-modal-desc a { color: #e84040; text-decoration: none; }
.cc-modal-desc a:hover { text-decoration: underline; }

.cc-cat { border-bottom: 1px solid #22222c; padding: 12px 0; }
.cc-cat:first-of-type { padding-top: 4px; }
.cc-cat-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; }
.cc-cat-header span:first-child { font-size: 13px; font-weight: 600; color: #eee; }
.cc-cat p { font-size: 11.5px; color: #888; line-height: 1.5; margin: 0; }
.cc-locked { font-size: 10.5px; color: #4ade80; background: #0d2e1a; padding: 3px 8px; border-radius: 6px; }

.cc-switch { position: relative; display: inline-block; width: 38px; height: 21px; flex-shrink: 0; }
.cc-switch input { opacity: 0; width: 0; height: 0; }
.cc-slider {
    position: absolute; cursor: pointer; inset: 0;
    background: #2a2a35; border-radius: 22px; transition: .2s;
}
.cc-slider::before {
    content: ""; position: absolute; height: 15px; width: 15px;
    left: 3px; bottom: 3px; background: #fff; border-radius: 50%; transition: .2s;
}
.cc-switch input:checked + .cc-slider { background: #e84040; }
.cc-switch input:checked + .cc-slider::before { transform: translateX(17px); }

.cc-modal-actions { margin-top: 18px; display: flex; flex-direction: column; gap: 8px; }
.cc-modal-actions-row { display: flex; gap: 8px; }
.cc-modal-actions-row .cc-btn { flex: 1; }

.cc-btn {
    padding: 11px 16px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    border: none;
    white-space: nowrap;
    font-family: inherit;
}
.cc-btn-primary { background: #e84040; color: #fff; width: 100%; }
.cc-btn-primary:hover { background: #cc3030; }
.cc-btn-outline { background: transparent; border: 1px solid #33333d; color: #ccc; }
.cc-btn-outline:hover { border-color: #55555f; }

@media (max-width: 480px) {
    .cc-modal { padding: 20px; }
    .cc-modal-actions-row { flex-direction: column; }
}
