/* Shared deployment label and secondary pages use the accepted navigation. */
.django-skip { position: fixed; z-index: 10000; top: 8px; left: 8px; padding: 10px 16px; background: #fff; color: #294b73; transform: translateY(-160%); }
.django-skip:focus { transform: none; }
.nav-links > .sign-in[aria-current] { min-height: 30px; margin-block: 0; padding: 0; background: transparent; border-radius: 50%; }
@media (max-width: 1000px) { .nav-links > .sign-in[aria-current] { min-height: 44px; } }
.utility-page { --updates-width: 0px; }
.utility-page > main { width: min(1120px, calc(100% - 80px)); margin: 0 auto; padding: 54px 0 65px; }
.utility-page h1 { margin: 0 0 20px; font-size: clamp(30px, 4vw, 44px); line-height: 1.2; letter-spacing: -.035em; }
.utility-page h2 { font-size: 24px; line-height: 1.4; }
.utility-page h3 { font-size: 16px; line-height: 1.5; }
.utility-page p { font-size: 15px; line-height: 1.8; color: #526176; }
.utility-page .eyebrow, .utility-page .section-number { font-size: 12px; line-height: 1.6; color: #526176; }
.utility-page .page-heading { padding-bottom: 30px; max-width: 760px; }
.utility-page .documentation-layout { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 48px; }
.utility-page .contents-nav a { display: block; margin: 15px 0; font-size: 13px; line-height: 1.7; }
.utility-page .document-section { padding-bottom: 26px; margin-bottom: 26px; border-bottom: 1px solid #e0e7ef; scroll-margin-top: 24px; }
.utility-page .document-section li { margin: 12px 0; font-size: 14px; line-height: 1.8; color: #526176; }
.utility-page .text-link { display: inline-block; font-size: 14px; line-height: 1.8; text-decoration: underline; text-underline-offset: 3px; }
.utility-page .document-callout, .utility-page .preview-note { padding: 16px 22px; border: 1px solid #abc2da; border-radius: 6px; background: #f1f6fa; }
.utility-page .preview-note a { color: #1462d1; text-decoration: underline; text-underline-offset: 3px; }
.utility-page .login-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 430px); gap: 65px; align-items: start; }
.utility-page .login-panel { min-width: 0; border: 1px solid #d5e0ea; border-radius: 7px; padding: 28px; background: #f7fafc; }
.utility-page .login-panel h2 { margin: 16px 0; }
.utility-page .preview-label { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; }
.utility-page .preview-login { min-inline-size: 0; margin: 23px 0 0; padding: 0; border: 0; }
.utility-page .preview-login label { display: block; font-size: 13px; margin: 18px 0 7px; }
.utility-page .preview-login input, .utility-page .preview-login button { display: block; width: 100%; min-width: 0; min-height: 44px; padding: 10px 12px; border: 1px solid #c7d5e2; border-radius: 4px; background: #eaf0f6; color: #526176; font: 13px/1.5 "Fira Sans", Arial, Helvetica, sans-serif; }
.utility-page .preview-login button { margin-top: 22px; }
.utility-page .preview-login :disabled { cursor: not-allowed; opacity: 1; }
.utility-page .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 760px) {
  .utility-page > main { width: calc(100% - 40px); padding: 34px 0 44px; }
  .utility-page .documentation-layout, .utility-page .login-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .utility-page .contents-nav a { display: inline-block; margin: 6px 18px 6px 0; }
}
@media (max-width: 440px) {
  .utility-page .login-panel { padding: 22px; }
}
/* The CoSWAT wordmark in the header, the height of the 21px text it replaced. */
.brand { display: inline-flex; align-items: center; gap: 8px; }
.brand-wordmark { display: block; width: auto; height: 22px; }
/* The site's typeface (self-hosted in site/fonts/); headings and controls inherit it. */
body { font-family: "Fira Sans", Arial, Helvetica, sans-serif; }
