
.cookie-consent,
.cookie-preferences{
    position:fixed;
    inset:0;
    z-index:100000;
    display:none;
    color:#f7f9ff;
    font-family:inherit;
}
.cookie-consent.is-open,
.cookie-preferences.is-open{display:block}
.cookie-consent__backdrop,
.cookie-preferences__backdrop{
    position:absolute;
    inset:0;
    background:rgba(3,10,24,.66);
    backdrop-filter:blur(4px);
}
.cookie-consent__panel{
    position:absolute;
    right:20px;
    bottom:20px;
    left:20px;
    width:min(1120px,calc(100% - 40px));
    margin:auto;
    padding:22px;
    border:1px solid rgba(164,188,232,.24);
    border-radius:18px;
    background:linear-gradient(180deg,#0c1f43,#07162f);
    box-shadow:0 24px 70px rgba(0,0,0,.35);
}
.cookie-consent__grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:24px;
    align-items:center;
}
.cookie-consent h2,
.cookie-preferences h2{
    margin:0 0 8px;
    color:#fff;
    font-size:22px;
}
.cookie-consent p,
.cookie-preferences p{
    margin:0;
    color:#b8c4d8;
    font-size:13px;
    line-height:1.65;
}
.cookie-consent a,
.cookie-preferences a{color:#9fc0ff}
.cookie-consent__actions{
    display:grid;
    grid-template-columns:repeat(3,auto);
    gap:9px;
}
.cookie-btn{
    min-height:44px;
    padding:0 16px;
    border:1px solid rgba(164,188,232,.24);
    border-radius:9px;
    color:#fff;
    background:rgba(255,255,255,.04);
    font:inherit;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.cookie-btn--primary{
    border-color:#3f7df4;
    background:#3f7df4;
}
.cookie-btn:focus-visible{
    outline:3px solid #8bb4ff;
    outline-offset:3px;
}
.cookie-preferences__dialog{
    position:absolute;
    top:50%;
    left:50%;
    width:min(720px,calc(100% - 30px));
    max-height:calc(100vh - 30px);
    overflow:auto;
    transform:translate(-50%,-50%);
    border:1px solid rgba(164,188,232,.24);
    border-radius:18px;
    background:#0b1d3f;
}
.cookie-preferences__head,
.cookie-preferences__actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:20px;
    border-bottom:1px solid rgba(164,188,232,.18);
}
.cookie-preferences__close{
    width:40px;
    height:40px;
    border:1px solid rgba(164,188,232,.24);
    border-radius:50%;
    color:#fff;
    background:transparent;
    font-size:20px;
    cursor:pointer;
}
.cookie-preferences__body{
    display:grid;
    gap:10px;
    padding:18px 20px;
}
.cookie-category{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    padding:16px;
    border:1px solid rgba(164,188,232,.18);
    border-radius:12px;
}
.cookie-category h3{
    margin:0 0 4px;
    color:#fff;
    font-size:14px;
}
.cookie-toggle input{
    width:20px;
    height:20px;
}
.cookie-preferences__actions{
    justify-content:flex-end;
    border-top:1px solid rgba(164,188,232,.18);
    border-bottom:0;
}
@media(max-width:760px){
    .cookie-consent__grid,
    .cookie-consent__actions{
        grid-template-columns:1fr;
    }
}
@media print{
    .cookie-consent,
    .cookie-preferences{display:none!important}
}