.cookie-banner{
position:fixed;
left:20px;
bottom:20px;
width:390px;
max-width:calc(100% - 20px);
background:#fff;
border-radius:18px;
padding:22px;
box-shadow:0 15px 40px rgba(0,0,0,.12);
z-index:999999;
opacity:0;
visibility:hidden;
pointer-events:none;
transform:translateY(15px);
transition:opacity .35s,transform .35s,visibility .35s;
}

.cookie-banner.show{
opacity:1;
visibility:visible;
pointer-events:auto;
transform:translateY(0);
}

.cookie-title{
margin:0 0 12px;
font-size:20px;
font-weight:700;
line-height:1.3;
color:#222;
}

.cookie-text{
margin:0;
font-size:15px;
line-height:1.6;
color:#555;
}

.cookie-link{
display:inline-block;
margin-top:10px;
color:#f57840;
font-weight:600;
text-decoration:none;
transition:.2s;
}

.cookie-link:hover{
color:#d86430;
text-decoration:underline;
}

.cookie-buttons{
display:flex;
gap:10px;
margin-top:22px;
}

.cookie-btn{
flex:1;
height:44px;
border:none;
border-radius:25px;
cursor:pointer;
font-size:15px;
font-weight:600;
transition:.2s;
}

.cookie-accept{
background:#f57840;
color:#fff;
}

.cookie-accept:hover{
background:#df6730;
}

.cookie-decline{
background:#ececec;
color:#555;
}

.cookie-decline:hover{
background:#dddddd;
}

@media(max-width:768px){

.cookie-banner{
left:10px;
right:10px;
bottom:10px;
width:auto;
padding:18px;
max-height:calc(100vh - 20px);
overflow-y:auto;
}

.cookie-title{
font-size:18px;
}

.cookie-text{
font-size:14px;
}

.cookie-buttons{
flex-direction:column;
}

.cookie-btn{
width:100%;
min-height:48px;
}

}