/* Cookie consent banner + preferences modal — DPDP/GDPR compliance UI */

/* ── Banner ── */
#nea-ck-bar{
    position:fixed;bottom:0;left:0;right:0;z-index:9998;
    background:#fff;border-top:3px solid #018771;
    padding:.9rem 1.25rem;
    transform:translateY(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);
    box-shadow:0 -4px 24px rgba(0,0,0,.1);
}
#nea-ck-bar[hidden]{display:none;}
.nea-ck-bar-inner{max-width:1020px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;}
.nea-ck-bar-text{flex:1;min-width:0;color:#374151;font-size:.82rem;line-height:1.55;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.nea-ck-bar-text a{color:#018771;font-size:.82rem;font-weight:700;text-decoration:none;}
.nea-ck-bar-text a:hover{text-decoration:underline;text-underline-offset:3px;}
.nea-ck-bar-actions{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center;flex-shrink:0;}

/* ── Shared button base ── */
.nea-ck-btn{
    padding:.4rem .95rem;border-radius:7px;font-size:.79rem;font-weight:600;
    cursor:pointer;transition:all .18s;white-space:nowrap;border:1.5px solid transparent;
    line-height:1.45;letter-spacing:.01em;font-family:inherit;
}
.nea-ck-btn:focus-visible{outline:2px solid #018771;outline-offset:2px;}
.nea-ck-btn--ghost{background:transparent;border-color:#018771;color:#018771;}
.nea-ck-btn--ghost:hover{background:rgba(1,135,113,.07);}
.nea-ck-btn--outline{background:transparent;border-color:#d1d5db;color:#374151;}
.nea-ck-btn--outline:hover{border-color:#374151;color:#111827;background:#f3f4f6;}
.nea-ck-btn--primary{background:#018771;border-color:#018771;color:#fff;}
.nea-ck-btn--primary:hover{background:#019882;border-color:#019882;}

/* ── Modal overlay ── */
#nea-ck-overlay{
    position:fixed;inset:0;z-index:9999;
    background:rgba(0,0,0,.55);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
    display:flex;align-items:center;justify-content:center;padding:1rem;
}
#nea-ck-overlay[hidden]{display:none;}

/* ── Modal card ── */
#nea-ck-modal{
    background:#fff;border:1px solid #e5e7eb;border-radius:14px;
    width:100%;max-width:510px;max-height:88vh;
    display:flex;flex-direction:column;
    box-shadow:0 8px 40px rgba(0,0,0,.18);outline:none;
}
.nea-ck-modal-hdr{
    display:flex;align-items:center;justify-content:space-between;
    padding:1rem 1.2rem .85rem;border-bottom:1px solid #e5e7eb;flex-shrink:0;
}
.nea-ck-modal-hdr h2{
    margin:0;color:#111827;font-size:1rem;font-weight:700;
    display:flex;align-items:center;gap:.45rem;
}
.nea-ck-modal-hdr h2 i{color:#018771;font-size:.88rem;}
#nea-ck-close{
    background:none;border:none;color:#9ca3af;cursor:pointer;
    padding:.3rem;line-height:1;border-radius:6px;font-size:1.05rem;
    transition:color .15s;
}
#nea-ck-close:hover{color:#111827;}
#nea-ck-close:focus-visible{outline:2px solid #018771;outline-offset:2px;}
.nea-ck-modal-intro{
    padding:.7rem 1.2rem;color:#4b5563;font-size:.78rem;line-height:1.55;
    border-bottom:1px solid #e5e7eb;flex-shrink:0;margin:0;
}
.nea-ck-modal-intro a{color:#018771;font-weight:700;text-decoration:none;}
.nea-ck-modal-intro a:hover{text-decoration:underline;text-underline-offset:3px;}
.nea-ck-modal-body{overflow-y:auto;flex:1;}

/* ── Category rows ── */
.nea-ck-cat{padding:.8rem 1.2rem;border-bottom:1px solid #f3f4f6;}
.nea-ck-cat:last-child{border-bottom:none;}
.nea-ck-cat-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;}
.nea-ck-cat-info{flex:1;}
.nea-ck-cat-name{
    color:#111827;font-size:.85rem;font-weight:600;
    display:flex;align-items:center;gap:.4rem;margin:0 0 .2rem;
}
.nea-ck-cat-name i{color:#018771;font-size:.75rem;width:13px;text-align:center;}
.nea-ck-badge{
    font-size:.65rem;font-weight:700;padding:.07rem .4rem;border-radius:4px;
    background:rgba(1,135,113,.1);color:#018771;border:1px solid rgba(1,135,113,.3);
    letter-spacing:.03em;text-transform:uppercase;
}
.nea-ck-cat-desc{color:#6b7280;font-size:.74rem;line-height:1.45;margin:0;}

/* ── Toggle switch ── */
.nea-ck-toggle{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0;margin-top:1px;}
.nea-ck-toggle input{opacity:0;width:0;height:0;position:absolute;}
.nea-ck-track{
    position:absolute;inset:0;background:#d1d5db;border-radius:11px;
    cursor:pointer;transition:background .22s;
}
.nea-ck-toggle input:checked ~ .nea-ck-track{background:#018771;}
.nea-ck-toggle input:disabled ~ .nea-ck-track{cursor:not-allowed;background:#018771;opacity:.7;}
.nea-ck-track::after{
    content:'';position:absolute;left:3px;top:3px;
    width:16px;height:16px;background:#fff;border-radius:50%;
    transition:transform .22s;box-shadow:0 1px 4px rgba(0,0,0,.28);
}
.nea-ck-toggle input:checked ~ .nea-ck-track::after{transform:translateX(18px);}
.nea-ck-toggle:focus-within .nea-ck-track{outline:2px solid #018771;outline-offset:2px;}

/* ── Modal footer ── */
.nea-ck-modal-ftr{
    padding:.85rem 1.2rem;border-top:1px solid #e5e7eb;
    display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0;
    background:#f9fafb;border-radius:0 0 14px 14px;
}
#nea-ck-modal .nea-ck-btn:focus-visible{outline-color:#018771;}

/* ── Responsive ── */
@media (max-width:520px){
    .nea-ck-bar-actions{width:100%;}
    .nea-ck-btn{flex:1;text-align:center;padding:.4rem .5rem;}
    .nea-ck-modal-ftr{flex-direction:column;}
    .nea-ck-modal-ftr .nea-ck-btn{width:100%;text-align:center;flex:unset;}
}
