/* Independent optional-statistics panel. Does not change existing tool styles. */
.as-consent[hidden], .as-consent [hidden] { display: none !important; }
.as-consent {
  position: fixed; z-index: 1200; inset: auto 18px 18px auto;
  width: min(620px, calc(100vw - 36px)); max-height: min(76vh, 650px);
  overflow-y: auto; overscroll-behavior: contain; box-sizing: border-box;
  padding: 22px; color: #203d32; background: #fbfaf3;
  border: 2px solid #405d48; border-radius: 12px;
  box-shadow: 0 9px 45px #14271f40; font: inherit; line-height: 1.55;
}
.as-consent__title { margin: 0 0 10px; font-size: 1.2rem; line-height: 1.3; }
.as-consent p { margin: 9px 0; overflow-wrap: anywhere; }
.as-consent a { color: #254e3e; text-decoration: underline; }
.as-consent__detail { font-size: .875rem; }
.as-consent__status { font-weight: 600; }
.as-consent__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 15px; }
.as-consent__choice, .as-consent__close, .as-consent-reopen {
  font: inherit; cursor: pointer; white-space: normal; overflow-wrap: anywhere;
  min-height: 44px; padding: 10px 14px; border: 1px solid #405d48; border-radius: 5px;
}
.as-consent__choice { flex: 1 1 180px; color: #fff; background: #294d3c; font-weight: 600; }
.as-consent__close { flex: 1 1 100%; color: #294d3c; background: transparent; }
.as-consent-reopen { color: inherit; background: transparent; text-decoration: underline; }
.as-consent button:focus-visible, .as-consent a:focus-visible, .as-consent-reopen:focus-visible {
  outline: 3px solid #a76c22; outline-offset: 3px;
}
@media (max-width: 480px) {
  .as-consent { inset: auto 10px 10px; width: auto; padding: 16px; max-height: 76vh; max-height: 76dvh; }
  .as-consent__choice { flex-basis: 100%; }
}
