/* Cookie — компактная карточка (удобный размер, не на весь экран) */

.hd-cookie-banner{
  position:fixed;
  z-index:10030;
  left:12px;
  right:12px;
  bottom:calc(14px + env(safe-area-inset-bottom,0px));
  display:flex;
  justify-content:center;
  pointer-events:none;
  animation:hdCookieIn .3s cubic-bezier(.22,1,.36,1) both;
}
.hd-cookie-banner[hidden]{display:none!important}

@keyframes hdCookieIn{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}

.hd-cookie-card{
  pointer-events:auto;
  width:100%;
  max-width:360px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(108,82,232,.13);
  box-shadow:
    0 2px 4px rgba(40,28,90,.04),
    0 14px 32px rgba(40,28,90,.14);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.hd-cookie-line{
  margin:0 0 10px;
  font-size:.8rem;
  line-height:1.45;
  color:#5c5670;
}
.hd-cookie-title{
  display:block;
  font-weight:800;
  font-size:.88rem;
  color:#1a1335;
  margin-bottom:3px;
  letter-spacing:-.02em;
}
.hd-cookie-line a{
  color:#5c3be8;
  font-weight:700;
  text-decoration:none;
  border-bottom:1px solid rgba(92,59,232,.25);
}
.hd-cookie-line a:hover{border-bottom-color:#5c3be8}

.hd-cookie-btns{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}

.hd-cookie-btns button{
  border:0;
  border-radius:10px;
  padding:9px 12px;
  font:inherit;
  font-size:.78rem;
  font-weight:750;
  cursor:pointer;
  line-height:1.2;
  white-space:nowrap;
  transition:background .12s,box-shadow .12s,transform .1s;
}
.hd-cookie-btns button:active{transform:scale(.97)}

.hd-cookie-all{
  flex:1 1 auto;
  background:linear-gradient(135deg,#6c52e8,#7c3aed);
  color:#fff;
  box-shadow:0 4px 12px rgba(108,82,232,.25);
}
.hd-cookie-all:hover{box-shadow:0 6px 14px rgba(108,82,232,.32)}
.hd-cookie-necessary{
  flex:1 1 auto;
  background:#f0ecff;
  color:#4c2fc9;
}
.hd-cookie-necessary:hover{background:#e6dfff}
.hd-cookie-settings{
  flex:0 0 auto;
  background:#fff;
  color:#8b849c;
  border:1px solid #e8e2f4!important;
  min-width:36px;
  padding:9px 10px;
}
.hd-cookie-settings:hover,
.hd-cookie-settings.is-open{
  background:#f5f2ff;
  color:#5c3be8;
  border-color:#d4caf5!important;
}
.hd-cookie-save{
  flex:1 1 100%;
  background:#1e1535;
  color:#fff;
}
.hd-cookie-save[hidden]{display:none!important}

.hd-cookie-panel{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #f0ecf8;
}
.hd-cookie-panel[hidden]{display:none!important}

.hd-cookie-cat{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  padding:7px 10px;
  border-radius:10px;
  background:#f7f5fd;
  border:1px solid transparent;
  cursor:pointer;
  font-size:.76rem;
  color:#3d3754;
}
.hd-cookie-cat:hover{background:#f0ecff}
.hd-cookie-cat:has(input:checked):not(.is-locked){
  border-color:rgba(108,82,232,.3);
  background:#f0ecff;
}
.hd-cookie-cat.is-locked{cursor:default;opacity:.9;background:#f3f4f6}
.hd-cookie-cat input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.hd-cookie-box{
  flex:0 0 16px;width:16px;height:16px;
  border-radius:5px;border:1.5px solid #c8c0e8;background:#fff;
  display:grid;place-items:center;
}
.hd-cookie-cat input:checked + .hd-cookie-box,
.hd-cookie-cat.is-locked .hd-cookie-box{
  background:linear-gradient(135deg,#6c52e8,#7c3aed);
  border-color:transparent;
}
.hd-cookie-cat input:checked + .hd-cookie-box::after,
.hd-cookie-cat.is-locked .hd-cookie-box::after{
  content:'';width:3px;height:7px;
  border:solid #fff;border-width:0 1.5px 1.5px 0;
  transform:rotate(45deg) translate(-0.5px,-0.5px);
}

@media(max-width:400px){
  .hd-cookie-banner{left:8px;right:8px;bottom:calc(10px + env(safe-area-inset-bottom,0px))}
  .hd-cookie-card{max-width:100%;padding:11px 12px}
}

/* Согласие на формах ПДн */
.consent-prior-note{
  margin:12px 0 4px;
  padding:10px 12px;
  border-radius:10px;
  background:#f6f4fb;
  border:1px solid #e8e2f5;
  color:#5c5570;
  font-size:.86rem;
  line-height:1.45;
}
.consent-prior-note a{color:#5b3fc4;font-weight:600}
.hd-consent,
label.hd-consent,
label.consent-check-row{
  display:flex!important;
  align-items:flex-start;
  gap:12px;
  margin:14px 0 4px!important;
  padding:12px 14px;
  border-radius:14px;
  background:linear-gradient(135deg,#f8f6ff 0%,#faf9ff 100%);
  border:1.5px solid #e8e2f8;
  cursor:pointer;
  font-size:.8125rem!important;
  line-height:1.5!important;
  color:#3d3754!important;
  transition:border-color .15s,box-shadow .15s,background .15s;
  text-align:left;
}
.hd-consent:hover,
label.consent-check-row:hover{border-color:#d4caf5;background:#f5f2ff}
.hd-consent:has(input:checked),
label.consent-check-row:has(input:checked){
  border-color:rgba(108,82,232,.4);
  box-shadow:0 0 0 3px rgba(108,82,232,.08);
  background:#f3efff;
}
.hd-consent input[type="checkbox"],
label.consent-check-row input[type="checkbox"]{
  flex-shrink:0;width:18px;height:18px;margin:2px 0 0!important;
  accent-color:#6c52e8;cursor:pointer;
}
.hd-consent a,
label.consent-check-row a{
  color:#5c3be8;font-weight:700;text-decoration:none;
  border-bottom:1px solid rgba(92,59,232,.25);
}
.hd-consent a:hover,
label.consent-check-row a:hover{border-bottom-color:#5c3be8}
.fb-field.hd-consent,
label.fb-field.hd-consent{display:flex!important;margin-top:8px!important}
