.aryse-cookies {
  position: fixed;
  z-index: 1200;
  right: 24px;
  bottom: max(22px, env(safe-area-inset-bottom));
  width: min(560px, calc(100vw - 48px));
  padding: 20px;
  color: #211a32;
  background: linear-gradient(135deg, rgb(255 255 255 / 91%), rgb(249 246 255 / 78%) 54%, rgb(233 224 255 / 78%));
  border: 1px solid rgb(255 255 255 / 88%);
  border-radius: 24px;
  box-shadow: 0 22px 58px rgb(17 11 38 / 24%), 0 5px 16px rgb(38 20 86 / 13%), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(26px) saturate(160%);
  backdrop-filter: blur(26px) saturate(160%);
  font-family: 'Montserrat', sans-serif;
  animation: aryse-cookie-enter 320ms cubic-bezier(.2, 0, 0, 1) both;
}
.aryse-cookies[hidden] { display: none; }
.aryse-cookies__top { display: flex; align-items: flex-start; gap: 12px; }
.aryse-cookies__icon { display: grid; width: 38px; height: 38px; flex: none; place-items: center; color: #5b35db; background: rgb(116 75 239 / 10%); border: 1px solid rgb(116 75 239 / 14%); border-radius: 13px; }
.aryse-cookies__icon svg { width: 18px; height: 18px; }
.aryse-cookies__copy { min-width: 0; }
.aryse-cookies__copy strong { display: block; margin: 0 0 5px; color: #211a32; font-size: 14px; font-weight: 600; letter-spacing: -.02em; }
.aryse-cookies__copy p { margin: 0; color: #625b70; font-size: 11px; font-weight: 400; line-height: 1.6; }
.aryse-cookies__copy a { color: #5d36d5; font-weight: 600; text-underline-offset: 2px; }
.aryse-cookies__actions { display: grid; grid-template-columns: 1fr 1fr 1.12fr; gap: 8px; margin-top: 16px; }
.aryse-cookies__button { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; gap: 7px; padding: 0 12px; color: #433856; background: linear-gradient(135deg, rgb(255 255 255 / 68%), rgb(238 232 250 / 58%)); border: 1px solid rgb(110 86 166 / 20%); border-radius: 999px; box-shadow: inset 0 1px 0 rgb(255 255 255 / 90%), 0 3px 8px rgb(35 23 70 / 8%); cursor: pointer; font: 600 10px/1.2 'Montserrat', sans-serif; transition: transform 150ms cubic-bezier(.2, 0, 0, 1), background 150ms cubic-bezier(.2, 0, 0, 1), box-shadow 150ms cubic-bezier(.2, 0, 0, 1); }
.aryse-cookies__button:hover { background: linear-gradient(135deg, #fff, rgb(231 221 255 / 80%)); box-shadow: inset 0 1px 0 #fff, 0 7px 13px rgb(35 23 70 / 12%); transform: translateY(-1px); }
.aryse-cookies__button:active { transform: scale(.96); }
.aryse-cookies__button:focus-visible, .aryse-cookies__dialog button:focus-visible, .aryse-cookies__dialog input:focus-visible { outline: 2px solid #7045ec; outline-offset: 3px; }
.aryse-cookies__button--primary { color: #fff; background: linear-gradient(120deg, rgb(127 89 255 / 95%), rgb(91 49 221 / 96%)); border-color: rgb(255 255 255 / 45%); box-shadow: inset 0 1px 0 rgb(255 255 255 / 47%), 0 6px 16px rgb(79 45 189 / 26%); }
.aryse-cookies__button--primary:hover { color: #fff; background: linear-gradient(120deg, #805cff, #5930df); box-shadow: inset 0 1px 0 rgb(255 255 255 / 55%), 0 9px 21px rgb(79 45 189 / 31%); }
.aryse-cookies__dialog { width: min(500px, calc(100vw - 32px)); max-width: none; max-height: min(86vh, 700px); padding: 0; overflow: auto; color: #211a32; background: linear-gradient(140deg, #fff, #f3effc 72%, #e8defe); border: 1px solid rgb(255 255 255 / 95%); border-radius: 25px; box-shadow: 0 28px 90px rgb(16 10 37 / 36%), inset 0 1px 0 #fff; font-family: 'Montserrat', sans-serif; }
.aryse-cookies__dialog::backdrop { background: rgb(15 10 27 / 35%); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.aryse-cookies__dialog-inner { padding: 24px; }
.aryse-cookies__dialog h2 { margin: 0; font-size: 22px; font-weight: 500; letter-spacing: -.04em; }
.aryse-cookies__dialog-intro { margin: 9px 0 18px; color: #625b70; font-size: 12px; line-height: 1.65; }
.aryse-cookies__category { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-top: 1px solid rgb(105 81 153 / 13%); }
.aryse-cookies__category-copy strong { display: block; font-size: 12px; font-weight: 600; }
.aryse-cookies__category-copy small { display: block; margin-top: 4px; color: #716a7e; font-size: 10px; line-height: 1.5; }
.aryse-cookies__category input { width: 40px; height: 22px; flex: none; accent-color: #6540e4; }
.aryse-cookies__category input:disabled { opacity: .6; }
.aryse-cookies__always-on { color: #5941a2; font-size: 10px; font-weight: 600; }
.aryse-cookies__dialog-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 18px; }
.aryse-cookies__dialog-actions .aryse-cookies__button--primary { grid-column: 1 / -1; }
@keyframes aryse-cookie-enter { from { opacity: 0; transform: translateY(13px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media (max-width: 620px) {
  .aryse-cookies { right: 10px; bottom: max(10px, env(safe-area-inset-bottom)); left: 10px; width: auto; padding: 16px; border-radius: 21px; }
  .aryse-cookies__icon { width: 34px; height: 34px; border-radius: 12px; }
  .aryse-cookies__copy strong { font-size: 13px; }
  .aryse-cookies__copy p { font-size: 10px; }
  .aryse-cookies__actions { grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 13px; }
  .aryse-cookies__button { min-height: 40px; padding-inline: 8px; font-size: 9px; }
  .aryse-cookies__actions [data-cookie-accept] { grid-column: 1 / -1; grid-row: 1; }
  .aryse-cookies__dialog-inner { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .aryse-cookies { animation: none; }
  .aryse-cookies__button { transition-duration: .01ms; }
}
