.gsp-hidden{display:none!important}
.gsp-banner{
  position:fixed;
  left:20px;
  right:20px;
  bottom:20px;
  z-index:999999;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  background:rgba(255,255,255,.92);
  color:#102033;
  padding:14px 16px;
  border-radius:20px;
  box-shadow:0 18px 60px rgba(15,23,42,.16);
  font-family:'Satoshi',Inter,Arial,sans-serif;
  font-size:14px;
  line-height:1.45;
  padding-right:48px;
  border:1px solid rgba(216,226,236,.95);
  backdrop-filter:blur(14px)
}
.gsp-banner__text{display:flex;flex-direction:column;gap:4px;max-width:70%}
.gsp-banner__text strong{font-weight:800;letter-spacing:-.02em;font-size:16px;color:#102033}
.gsp-banner__text span{font-size:13px;opacity:1;color:#607287}
.gsp-link{color:#0c6dfd;text-decoration:underline}
.gsp-banner__actions{display:flex;gap:8px;flex-wrap:wrap}
.gsp-btn{
  border:1px solid transparent!important;
  border-radius:999px!important;
  padding:10px 18px!important;
  font-size:12px!important;
  text-transform:none;
  font-family:'Satoshi',Inter,Arial,sans-serif!important;
  font-weight:700!important;
  cursor:pointer;
  transition:transform .08s ease,opacity .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease
}
.gsp-btn:active{transform:scale(.98)}
.gsp-btn--primary{background:#0c6dfd!important;color:#fff!important;box-shadow:0 10px 30px rgba(12,109,253,.18)}
.gsp-btn--primary:hover{background:#0b57cb!important}
.gsp-btn--secondary{background:#fff!important;color:#102033!important;border-color:#d9e4ee!important}
.gsp-btn--secondary:hover{border-color:#0c6dfd!important;color:#0c6dfd!important;background:#f7fbff!important}
.gsp-btn--ghost{background:transparent!important;color:#102033!important;border-color:#d9e4ee!important}
.gsp-btn--ghost:hover{background:#edf4fb!important;border-color:#0c6dfd!important;color:#0c6dfd!important}
.gsp-close{
  position:absolute;
  top:10px;
  right:12px;
  background:none!important;
  border:none!important;
  padding:0!important;
  margin:0;
  cursor:pointer;
  width:18px;
  height:18px
}
.gsp-close::before{
  content:"✕";
  font-size:18px;
  color:#607287;
  line-height:1
}
.gsp-close:hover{opacity:.7}
.gsp-overlay{position:fixed;inset:0;background:rgba(15,23,42,.52);z-index:999998}
.gsp-modal{
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  z-index:999999;
  width:min(720px,92vw);
  background:rgba(255,255,255,.95);
  color:#102033;
  border-radius:22px;
  box-shadow:0 30px 80px rgba(15,23,42,.2);
  overflow:hidden;
  border:1px solid rgba(216,226,236,.95);
  backdrop-filter:blur(14px)
}
.gsp-modal, .gsp-modal *{color:#102033}
.gsp-modal a, .gsp-modal a:visited{color:#0c6dfd}
.gsp-modal__header,.gsp-modal__footer{
  padding:16px 18px;
  background:#edf4fb;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border-bottom:1px solid #d9e4ee
}
.gsp-modal__footer{border-bottom:0;border-top:1px solid #d9e4ee}
.gsp-modal__header h3{
  margin:0;
  font:800 18px/1 'Satoshi',Inter,Arial,sans-serif;
  color:#102033
}
.gsp-modal__body{
  padding:12px 18px;
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:60vh;
  overflow:auto
}
.gsp-cat{
  background:#fff;
  border:1px solid #d9e4ee;
  border-radius:14px;
  padding:12px 14px;
  box-shadow:0 10px 30px rgba(15,23,42,.04)
}
.gsp-cat__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px
}
.gsp-cat__head strong{
  font:800 15px/1 'Satoshi',Inter,Arial,sans-serif;
  color:#102033
}
.gsp-cat p{
  margin:0;
  font:13px/1.5 'Satoshi',Inter,Arial,sans-serif;
  opacity:1;
  color:#607287
}
.gsp-switch{position:relative;width:46px;height:26px}
.gsp-switch input{opacity:0;width:0;height:0}
.gsp-slider{
  position:absolute;
  inset:0;
  background:#cbd5e1;
  border-radius:20px;
  cursor:pointer;
  transition:.2s
}
.gsp-slider::before{
  content:"";
  position:absolute;
  width:20px;
  height:20px;
  left:3px;
  top:3px;
  background:#fff;
  border-radius:50%;
  transition:.2s;
  box-shadow:0 4px 10px rgba(15,23,42,.15)
}
.gsp-switch input:checked + .gsp-slider{background:#10b981}
.gsp-switch input:checked + .gsp-slider::before{transform:translateX(20px)}
.gsp-modal__btns{display:flex;gap:10px}
.gsp-brandline{
  padding:0 18px 14px;
  color:#607287;
  font:12px/1.4 'Satoshi',Inter,Arial,sans-serif
}
.gsp-brandline a{
  color:#0c6dfd;
  text-decoration:underline
}
.gsp-cookie-settings,
.gsp-shortcode-btn{
  all:unset;
  color:#0c6dfd;
  font-family:'Satoshi',Inter,Arial,sans-serif;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  text-decoration:underline;
  display:inline;
  line-height:1.4
}
.gsp-cookie-settings:hover,
.gsp-shortcode-btn:hover{
  color:#0b57cb;
  text-decoration:none
}
.gsp-cookie-settings:focus,
.gsp-shortcode-btn:focus{
  outline:none;
  text-decoration:underline
}
@media (max-width:900px){
  .gsp-banner{flex-direction:column;align-items:flex-start}
  .gsp-banner__text{max-width:100%}
  .gsp-banner__actions{width:100%;flex-wrap:wrap;gap:8px}
  .gsp-btn{flex:1;text-align:center;border-radius:10px!important;padding:10px 14px!important}
  .gsp-modal__footer{flex-direction:column;align-items:stretch;gap:12px}
  .gsp-modal__footer .gsp-btn{width:100%;border-radius:10px!important;padding:10px 16px!important}
  .gsp-modal__btns{display:flex;flex-direction:column;width:100%}
  .gsp-modal__btns .gsp-btn:first-child{margin-bottom:12px!important}
}
@media (max-width:520px){
  .gsp-banner{left:12px;right:12px;bottom:12px}
  .gsp-banner__actions{flex-direction:column}
  .gsp-btn{width:100%}
}