/* Scope every consent rule above theme heading/button styles, regardless of load order. */
#tm-analytics-banner[hidden],#tm-analytics-banner [hidden]{display:none!important}
#tm-analytics-banner{
  box-sizing:border-box;position:fixed;inset:auto auto max(24px,env(safe-area-inset-bottom)) 24px;
  z-index:10000;display:block;width:432px;max-width:calc(100vw - 48px);margin:0;padding:24px;
  max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;
  border:1px solid #e5e2eb;border-radius:8px;background:#fff;color:#19171e;
  box-shadow:0 12px 40px -12px rgb(25 23 30 / 18%),0 2px 8px rgb(25 23 30 / 4%);
  font-family:var(--font,Manrope,Arial,Helvetica,sans-serif);text-align:left;
}
#tm-analytics-banner *{box-sizing:border-box}
#tm-analytics-banner h2{
  display:block;margin:0 32px 9px 0;padding:0;color:#19171e;
  font-family:inherit;font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.035em;
}
#tm-analytics-banner h2:focus{outline:none}
#tm-analytics-banner .tm-consent__copy>p{
  margin:0;padding:0;color:#68646e;font-family:inherit;font-size:13px;font-weight:400;
  line-height:1.65;letter-spacing:0;
}
#tm-analytics-banner .tm-consent__copy>p.tm-consent__status{
  margin-top:10px;padding:9px 11px;border-radius:4px;background:#f5f3f8;
  color:#4c4656;font-size:12px;line-height:1.5;
}
#tm-analytics-banner .tm-consent__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
#tm-analytics-banner .tm-consent__actions button{
  appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:0;
  width:100%;min-width:0;min-height:44px;margin:0;padding:11px 12px;
  border:1px solid #d7d3df;border-radius:5px;background:#fff;color:#302a3a;
  font-family:inherit;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:0;
  text-align:center;text-transform:none;white-space:normal;text-decoration:none;
  cursor:pointer;box-shadow:none;transform:none;transition:background .15s,border-color .15s;
}
#tm-analytics-banner .tm-consent__actions button:hover{background:#f7f5fa;border-color:#bdb6cb}
#tm-analytics-banner .tm-consent__actions button[data-tm-consent="granted"]{background:#5715e6;border-color:#5715e6;color:#fff}
#tm-analytics-banner .tm-consent__actions button[data-tm-consent="granted"]:hover{background:#4311b4;border-color:#4311b4}
#tm-analytics-banner .tm-consent__detail{
  display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;
  margin-top:13px;color:#77717f;font-family:inherit;font-size:11px;font-weight:400;line-height:1.6;letter-spacing:0;
}
#tm-analytics-banner .tm-consent__privacy{
  display:inline-block;padding:4px 0;color:#62596f;font-size:11px;font-weight:600;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;white-space:nowrap;
}
#tm-analytics-banner .tm-consent__privacy:hover{color:#5715e6}
#tm-analytics-banner button:focus-visible,#tm-analytics-banner a:focus-visible,.tm-cookie-settings:focus-visible{outline:2px solid #5715e6;outline-offset:3px}
#tm-analytics-banner .tm-consent__close{
  appearance:none;position:absolute;top:11px;right:10px;display:flex;align-items:center;justify-content:center;
  width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:5px;background:transparent;color:#68646e;
  font:24px/1 Arial,Helvetica,sans-serif;box-shadow:none;transform:none;cursor:pointer;
}
#tm-analytics-banner .tm-consent__close:hover{background:#f5f3f8}
.tm-cookie-settings{appearance:none;display:inline-flex;align-items:center;min-height:44px;margin:0;padding:0;background:none;border:0;border-radius:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;box-shadow:none}
.tm-cookie-settings:hover{color:#5715e6}
.tm-cookie-settings-fallback{padding:20px 24px;text-align:center;color:#68646e;background:#fff;font:13px/1.5 var(--font,Manrope,Arial,Helvetica,sans-serif)}
@media(max-width:600px){
  #tm-analytics-banner{inset:auto 12px max(12px,env(safe-area-inset-bottom)) 12px;width:auto;max-width:none;padding:20px;max-height:calc(100dvh - 24px);border-radius:7px}
  #tm-analytics-banner h2{font-size:19px;margin-bottom:8px}
  #tm-analytics-banner .tm-consent__actions{gap:8px;margin-top:16px}
  #tm-analytics-banner .tm-consent__detail{margin-top:11px}
}
@media(max-width:380px){
  #tm-analytics-banner{padding:18px}
  #tm-analytics-banner .tm-consent__detail{font-size:11px;gap:4px 10px;justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){#tm-analytics-banner .tm-consent__actions button{transition:none}}
