/* The site footer, as on the SSI website: the logo, the disclaimer and X on the left; Useful Links and Legal; the
   copyright line with Back to top. One copy at the end of the landing page, one at the end of each tracker list (its
   margins undo the list's padding, set by src/landing.js), one on the Weekly Updates and About Us pages. The ids lift
   these rules above the app's all-text rules. */
html:root body :is(#site-footer-home, #site-footer-list, #site-footer).ssi-footer { --sf-gutter: 32px; display: block; box-sizing: border-box; background: #1e1e1f; color: #8e8f94; font-family: Poppins, system-ui, sans-serif; text-align: left; }
html:root body #site-footer-list.ssi-footer { order: 11; flex: 0 0 auto; width: calc(100% + var(--pane-pl, 0px) + var(--pane-pr, 0px)); margin: 56px calc(-1 * var(--pane-pr, 0px)) calc(-1 * var(--pane-pb, 0px)) calc(-1 * var(--pane-pl, 0px)); }
html:root body #site-footer-home.ssi-footer { margin: 0; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) * { box-sizing: border-box; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-main { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr); gap: 48px; width: min(1180px, calc(100% - 2 * var(--sf-gutter))); margin: 0 auto; padding: 64px 0 48px; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-logo { display: inline-block; color: #ffffff; line-height: 0; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-logo svg { display: block; width: 196px; height: auto; fill: currentColor; filter: grayscale(1); opacity: .62; transition: opacity .15s; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-logo:hover svg { opacity: .85; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-disclaimer { max-width: 560px; margin: 28px 0 0; color: #8e8f94; font-size: 15px; font-weight: 400; line-height: 1.75; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-social { display: inline-grid; place-items: center; width: 36px; height: 36px; margin: 28px 0 0; border-radius: 50%; background: #1d9bf0; transition: transform .15s, background-color .15s; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-social:hover { background: #1a8cd8; transform: translateY(-1px); }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-social svg { width: 18px; height: 18px; fill: #ffffff; stroke: none; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-head { margin: 2px 0 24px; color: #ffffff; font-size: 20px; font-weight: 500; line-height: 28px; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-col ul { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-col a { color: #e6e6e9; font-size: 15px; font-weight: 400; line-height: 24px; text-decoration: none; transition: color .15s; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-col a:hover { color: #ff9900; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) :is(a, button):focus-visible { outline: 2px solid #ff9900; outline-offset: 3px; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-bottom { position: relative; display: flex; align-items: center; justify-content: center; width: min(1180px, calc(100% - 2 * var(--sf-gutter))); min-height: 76px; margin: 0 auto; padding: 18px 56px 22px; border-top: 1px solid rgba(255,255,255,.07); }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-bottom p { margin: 0; color: #77787d; font-size: 14px; font-weight: 400; line-height: 22px; text-align: center; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-bottom p span { font: inherit; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-top { position: absolute; top: 50%; right: 0; display: grid; place-items: center; width: 40px; height: 40px; margin: -20px 0 0; padding: 0; border: 0; border-radius: 4px; background: #141415; box-shadow: none; color: #ffffff; cursor: pointer; transition: background-color .15s; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-top:hover { background: #2b2b2e; }
html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-top svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
/* the landing page's live window shows no footer */
:root[data-embed] body .ssi-footer { display: none !important; }
@media (max-width: 839px) {
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer).ssi-footer { --sf-gutter: 16px; }
  html:root body #site-footer-list.ssi-footer { margin-top: 40px; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-main { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 36px 24px; padding: 44px 0 36px; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-about { grid-column: 1 / -1; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-logo svg { width: 168px; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-disclaimer { margin-top: 22px; font-size: 14px; line-height: 1.7; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-head { margin-bottom: 16px; font-size: 18px; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-col ul { gap: 12px; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-bottom { justify-content: flex-start; padding: 16px 52px 20px 0; }
  html:root body :is(#site-footer-home, #site-footer-list, #site-footer) .sf-bottom p { font-size: 13px; text-align: left; }
}
