/* Tomorrow.bio consent banner, TB5.0 design system: PP Neue Montreal 13px, ink pill buttons 30px,
 * hairline border, 36px container radius. Accept all is the one filled button. */
.tb-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:2147483000;max-width:560px;margin:0 auto;
  box-sizing:border-box;padding:16px 16px 16px 26px;background:#fff;color:#111;border:1px solid #e0e0e0;border-radius:36px;
  box-shadow:0 8px 24px rgba(17,17,17,.12);font:400 .813rem/1.6 "PP Neue Montreal",system-ui,sans-serif;
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;max-height:calc(100vh - 32px);overflow:auto}
.tb-consent[hidden],.tb-consent [hidden]{display:none!important}
.tb-consent:focus{outline:none}
.tb-consent p{flex:1 1 220px;margin:0}
.tb-consent a{color:#737373;text-decoration:underline;white-space:nowrap}
.tb-consent-settings{flex:1 1 100%;display:grid;gap:8px;padding:12px 0 2px;border-top:1px solid #e0e0e0}
.tb-consent-cat{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.tb-consent-cat input{flex:none;width:16px;height:16px;margin:3px 0 0;accent-color:#111}
.tb-consent-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-left:auto}
.tb-consent-btn{height:30px;padding:0 15px;font:inherit;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;
  color:#fff;background:#111;border:1px solid #111;border-radius:999px;cursor:pointer;transition:background-color 180ms ease}
.tb-consent-btn:hover{background:#3a3a3a;border-color:#3a3a3a}
.tb-consent-secondary{color:#111;background:transparent;border-color:#e0e0e0}
.tb-consent-secondary:hover{background:#f7f7f7;border-color:#e0e0e0}
.tb-consent-link{padding:0;font:inherit;color:#737373;background:none;border:0;text-decoration:underline;cursor:pointer}
.tb-consent-btn:focus-visible,.tb-consent-link:focus-visible,.tb-consent-cat input:focus-visible,.tb-consent a:focus-visible{outline:2px solid #5275e9;outline-offset:2px}
