.rz-page,
.rz-portal,
.rz-projects {
  --rz-accent: rgb(56, 56, 56);
  --rz-blue: rgb(27, 130, 255);
  --rz-ink: rgba(0, 0, 0, 0.85);
  --rz-line: rgba(0, 0, 0, 0.10);
  --rz-muted: rgba(0, 0, 0, 0.58);
  --rz-panel: rgb(255, 255, 255);
  --rz-soft: rgb(248, 249, 250);
  --rz-soft-violet: rgb(249, 247, 255);
  --rz-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif;
  --rz-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Roboto Mono", monospace;
  --rz-shadow: 0 8px 32px rgba(0, 0, 0, 0.10);
  color: var(--rz-ink);
  font-family: var(--rz-font);
  margin: 0 auto 4rem;
  max-width: min(1200px, calc(100vw - 48px));
  padding: 1rem 0 4rem;
}

html:has(.rz-page, .rz-portal, .rz-projects),
body:has(.rz-page, .rz-portal, .rz-projects) {
  background: #fff !important;
  color: var(--rz-ink) !important;
  min-height: 100vh;
}

body:has(.rz-page, .rz-portal, .rz-projects) > .navbar,
body:has(.rz-page, .rz-portal, .rz-projects) > .web-footer {
  display: none !important;
}

body:has(.rz-page, .rz-portal, .rz-projects) .page-content-wrapper,
body:has(.rz-page, .rz-portal, .rz-projects) .page_content,
body:has(.rz-page, .rz-portal, .rz-projects) main.container {
  background: transparent !important;
  color: var(--rz-ink) !important;
  padding-top: 0 !important;
}

.rz-page *,
.rz-portal *,
.rz-projects * {
  box-sizing: border-box;
  letter-spacing: 0;
}

.rz-page.is-narrow {
  max-width: min(880px, calc(100vw - 48px));
}

.rz-topbar,
.rz-head,
.rz-projects-head {
  align-items: center;
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  margin-bottom: 3rem;
  padding: 1rem 0;
}

.rz-brand {
  align-items: center;
  display: grid;
  gap: 0 .9rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
}

.rz-brand img {
  grid-row: 1 / span 2;
  height: 40px;
  width: auto;
}

.rz-brand h1,
.rz-head h1,
.rz-projects-head h1 {
  color: var(--rz-ink);
  font-size: clamp(1.65rem, 3vw, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}

.rz-brand h1 {
  font-size: clamp(1.25rem, 2vw, 1.6rem);
}

.rz-brand span,
.rz-head p,
.rz-sync,
.rz-muted,
.rz-meta {
  color: var(--rz-muted);
}

.rz-brand span,
.rz-sync,
.rz-meta,
.rz-label,
.rz-project-id {
  font-family: var(--rz-mono);
  font-size: .78rem;
  font-variant-numeric: tabular-nums;
}

.rz-nav,
.rz-actions,
.rz-form-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.rz-nav {
  gap: 1.35rem;
}

.rz-nav a {
  border-bottom: 2px solid transparent;
  color: var(--rz-ink);
  font-size: .94rem;
  font-weight: 400;
  line-height: 1;
  padding: .5rem 0;
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease;
}

.rz-nav a:hover,
.rz-nav a:focus-visible {
  color: var(--rz-blue);
  text-decoration: none;
}

.rz-nav a[aria-current="page"] {
  border-color: var(--rz-blue);
  color: var(--rz-blue);
}

.rz-nav a.rz-nav-logout {
  color: var(--rz-muted);
}

.rz-button {
  align-items: center;
  background: transparent;
  border: 1px solid var(--rz-line);
  border-radius: 10px;
  color: var(--rz-ink);
  cursor: pointer;
  display: inline-flex;
  font-size: .94rem;
  font-weight: 500;
  justify-content: center;
  line-height: 1;
  min-height: 44px;
  padding: .82rem 1.35rem;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
  width: fit-content;
}

.rz-button:hover,
.rz-button:focus-visible {
  background: rgba(0, 0, 0, .05);
  color: var(--rz-ink);
  text-decoration: none;
  transform: translateY(-1px);
}

.rz-button.primary {
  background: var(--rz-ink);
  border-color: var(--rz-ink);
  color: #fff;
}

.rz-button.primary:hover,
.rz-button.primary:focus-visible {
  background: var(--rz-accent);
  border-color: var(--rz-accent);
  color: #fff;
}

.rz-button[aria-disabled="true"] {
  color: rgba(0, 0, 0, .38);
  cursor: default;
  transform: none;
}

.rz-button:disabled {
  opacity: .58;
  pointer-events: none;
  transform: none;
}

.rz-flash,
.rz-form-message {
  border: 1px solid rgba(0, 0, 0, .08);
  border-radius: 8px;
  color: var(--rz-muted);
  font-size: .92rem;
  line-height: 1.35;
}

.rz-flash {
  margin: 0 0 1rem;
  padding: .9rem 1rem;
}

.rz-form-message {
  min-height: 1.35rem;
}

.rz-flash.success,
.rz-form-message.success {
  background: rgba(16, 185, 129, .08);
  border-color: rgba(16, 185, 129, .22);
  color: rgb(6, 95, 70);
}

.rz-flash.danger,
.rz-form-message.danger {
  background: rgba(239, 68, 68, .08);
  border-color: rgba(239, 68, 68, .22);
  color: rgb(153, 27, 27);
}

.rz-flash.warning,
.rz-form-message.warning {
  background: rgba(245, 158, 11, .12);
  border-color: rgba(245, 158, 11, .26);
  color: rgb(120, 53, 15);
}

.rz-hero {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .75fr);
}

.rz-hero > div:first-child,
.rz-breakdown,
.rz-project-card,
.rz-project-panel,
.rz-form,
.rz-row,
.rz-empty {
  background: var(--rz-panel);
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 8px;
  box-shadow: var(--rz-shadow);
  overflow: hidden;
  position: relative;
}

.rz-hero > div:first-child,
.rz-breakdown {
  min-height: 340px;
  padding: clamp(1.5rem, 3vw, 2.4rem);
}

.rz-hero > div:first-child {
  background:
    linear-gradient(115deg, rgba(249, 247, 255, .72), rgba(255, 255, 255, .92)),
    var(--rz-panel);
}

.rz-breakdown {
  display: grid;
  gap: .9rem;
}

.rz-status-row {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.rz-status-row h2 {
  color: var(--rz-ink);
  font-size: clamp(4.5rem, 12vw, 8.3rem);
  font-weight: 700;
  line-height: .86;
  margin: 0;
}

.rz-pill {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  display: inline-flex;
  font-family: var(--rz-mono);
  font-size: .75rem;
  font-weight: 500;
  min-height: 28px;
  padding: .34rem .72rem;
  white-space: nowrap;
}

.rz-status-row .rz-pill {
  margin-top: .4rem;
}

.rz-pill.success {
  background: rgba(16, 185, 129, .10);
  border-color: rgba(16, 185, 129, .25);
  color: rgb(6, 95, 70);
}

.rz-pill.active {
  background: rgba(27, 130, 255, .10);
  border-color: rgba(27, 130, 255, .25);
  color: rgb(0, 84, 166);
}

.rz-pill.warning {
  background: rgba(245, 158, 11, .12);
  border-color: rgba(245, 158, 11, .26);
  color: rgb(120, 53, 15);
}

.rz-pill.danger {
  background: rgba(239, 68, 68, .10);
  border-color: rgba(239, 68, 68, .24);
  color: rgb(153, 27, 27);
}

.rz-pill.muted {
  background: rgba(0, 0, 0, .04);
  border-color: rgba(0, 0, 0, .08);
  color: var(--rz-muted);
}

.rz-progress {
  background: rgba(0, 0, 0, .08);
  border-radius: 999px;
  height: 10px;
  overflow: hidden;
  width: 100%;
}

.rz-progress span {
  background: var(--rz-blue);
  border-radius: inherit;
  display: block;
  height: 100%;
  min-width: 4px;
}

.rz-metrics {
  display: grid;
  gap: .8rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 1.5rem;
}

.rz-metric,
.rz-count {
  background: var(--rz-soft);
  border: 1px solid rgba(0, 0, 0, .05);
  border-radius: 8px;
  min-width: 0;
  padding: .95rem;
}

.rz-metric strong,
.rz-count strong {
  color: var(--rz-ink);
  display: block;
  font-family: var(--rz-mono);
  font-size: clamp(1.35rem, 2.6vw, 1.9rem);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  line-height: 1;
}

.rz-metric span,
.rz-count span {
  color: var(--rz-muted);
  display: block;
  font-size: .86rem;
  line-height: 1.25;
  margin-top: .42rem;
}

.rz-breakdown h3 {
  color: var(--rz-blue);
  font-size: 1rem;
  font-weight: 600;
  margin: 0 0 .35rem;
  text-transform: uppercase;
}

.rz-breakdown-row {
  align-items: center;
  background: var(--rz-soft);
  border: 1px solid rgba(0, 0, 0, .05);
  border-radius: 8px;
  display: grid;
  gap: .75rem;
  grid-template-columns: 1fr auto;
  padding: .82rem .9rem;
}

.rz-breakdown-row span {
  color: var(--rz-muted);
}

.rz-breakdown-row strong {
  color: var(--rz-ink);
  font-family: var(--rz-mono);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.rz-section-head {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin: 3rem 0 1.2rem;
}

.rz-section-head h2 {
  color: var(--rz-ink);
  font-size: clamp(1.6rem, 3vw, 2.25rem);
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}

.rz-section-head a {
  color: var(--rz-blue);
  font-weight: 500;
  text-decoration: none;
}

.rz-project-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
}

.rz-project-list,
.rz-list {
  display: grid;
  gap: 1rem;
}

.rz-project-card,
.rz-project-panel,
.rz-form {
  display: grid;
  gap: 1.1rem;
  padding: 1.25rem;
}

.rz-project-card:hover,
.rz-project-panel:hover,
.rz-row:hover {
  transform: translateY(-2px);
}

.rz-project-card,
.rz-project-panel,
.rz-row {
  transition: transform .2s ease, box-shadow .2s ease;
}

.rz-project-card:hover,
.rz-project-panel:hover,
.rz-row:hover {
  box-shadow: 0 12px 36px rgba(0, 0, 0, .12);
}

.rz-project-card header,
.rz-project-title {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.rz-project-card h3,
.rz-project-title h2 {
  color: var(--rz-ink);
  font-size: 1.12rem;
  font-weight: 600;
  line-height: 1.25;
  margin: 0;
}

.rz-project-id {
  color: var(--rz-muted);
  margin-top: .35rem;
}

.rz-counts {
  display: grid;
  gap: .8rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.rz-project-card .rz-counts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rz-progress-line {
  align-items: center;
  display: grid;
  gap: .8rem;
  grid-template-columns: minmax(0, 1fr) auto;
}

.rz-progress-line strong {
  color: var(--rz-blue);
  font-family: var(--rz-mono);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.rz-annotation-summary,
.rz-annotation-filters,
.rz-annotation-shell {
  display: grid;
  gap: 1rem;
}

.rz-annotation-summary {
  align-items: stretch;
  grid-template-columns: minmax(260px, 1fr) repeat(3, minmax(120px, .22fr));
  margin-bottom: 1rem;
}

.rz-annotation-summary > div:first-child,
.rz-annotation-filters {
  background: var(--rz-panel);
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 8px;
  box-shadow: var(--rz-shadow);
  padding: 1rem;
}

.rz-annotation-summary strong[data-annotation-live-state] {
  color: var(--rz-ink);
  display: block;
  font-size: 1.05rem;
  margin-top: .28rem;
}

.rz-annotation-filters {
  align-items: end;
  grid-template-columns: minmax(220px, .9fr) minmax(160px, .45fr) minmax(220px, 1fr) auto;
  margin: 0 0 1rem;
}

.rz-annotation-filters .rz-field {
  gap: .35rem;
}

.rz-annotation-filters .rz-field span {
  color: var(--rz-blue);
  font-size: .78rem;
  font-weight: 600;
  text-transform: uppercase;
}

.rz-annotation-shell {
  grid-template-columns: minmax(260px, .78fr) minmax(520px, 1.45fr) minmax(260px, .72fr);
}

.rz-annotation-file {
  color: var(--rz-ink);
  grid-template-columns: minmax(0, 1fr) auto;
  text-decoration: none;
}

.rz-annotation-file.is-selected {
  background: rgba(27, 130, 255, .08);
  border-color: rgba(27, 130, 255, .25);
}

.rz-annotation-viewer,
.rz-annotation-objects {
  align-content: start;
}

.rz-annotation-canvas {
  align-items: center;
  background: rgb(19, 23, 28);
  border-radius: 8px;
  display: grid;
  min-height: 460px;
  overflow: auto;
  padding: 1rem;
  position: relative;
}

.rz-annotation-canvas img,
.rz-annotation-canvas svg {
  border-radius: 6px;
  grid-area: 1 / 1;
  width: 100%;
}

.rz-annotation-canvas img {
  display: block;
}

.rz-annotation-canvas svg {
  height: 100%;
  min-height: 420px;
}

.rz-annotation-shape {
  fill: transparent;
  stroke: var(--rz-blue);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 4;
}

.rz-row {
  align-items: center;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1.25fr) .7fr .7fr auto;
  padding: 1.1rem 1.25rem;
}

.rz-row.is-support {
  grid-template-columns: minmax(0, 1.3fr) .65fr .65fr;
}

.rz-title {
  color: var(--rz-ink);
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 .35rem;
}

.rz-empty {
  color: var(--rz-muted);
  padding: 1.25rem;
}

.rz-field {
  display: grid;
  gap: .55rem;
}

.rz-field label {
  color: var(--rz-blue);
  font-size: .78rem;
  font-weight: 600;
  margin: 0;
  text-transform: uppercase;
}

.rz-input {
  background: #fff;
  border: 1px solid var(--rz-line);
  border-radius: 8px;
  color: var(--rz-ink);
  font-family: var(--rz-font);
  font-size: 1rem;
  min-height: 48px;
  padding: .78rem .9rem;
  transition: border-color .18s ease, box-shadow .18s ease;
  width: 100%;
}

.rz-input:focus {
  border-color: var(--rz-blue);
  box-shadow: 0 0 0 4px rgba(27, 130, 255, 0.12);
  outline: none;
}

.rz-input[aria-invalid="true"] {
  border-color: rgb(239, 68, 68);
  box-shadow: 0 0 0 4px rgba(239, 68, 68, .10);
}

textarea.rz-input {
  min-height: 180px;
  resize: vertical;
}

.rz-login-page,
body:has(.login-content.page-card) {
  background: #fff !important;
  color: var(--rz-ink, rgba(0, 0, 0, .85)) !important;
  font-family: var(--rz-font, "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif) !important;
}

.rz-login-page > .navbar,
.rz-login-page > .web-footer,
body:has(.login-content.page-card) > .navbar,
body:has(.login-content.page-card) > .web-footer {
  display: none !important;
}

.rz-login-page main.container,
body:has(.login-content.page-card) main.container {
  max-width: min(360px, calc(100vw - 40px)) !important;
  min-height: 100vh !important;
  padding: 1.55rem 0 3rem !important;
}

.rz-login-page .for-login,
.rz-login-page .for-forgot,
.rz-login-page .for-login-with-email-link,
.rz-login-page .for-signup,
body:has(.login-content.page-card) .for-login,
body:has(.login-content.page-card) .for-forgot,
body:has(.login-content.page-card) .for-login-with-email-link,
body:has(.login-content.page-card) .for-signup {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 360px !important;
  width: 100% !important;
}

.rz-login-page .page-card-head,
body:has(.login-content.page-card) .page-card-head {
  color: var(--rz-ink, rgba(0, 0, 0, .85)) !important;
  margin: 0 0 .85rem !important;
  text-align: center !important;
}

.rz-login-page .page-card-head .app-logo,
body:has(.login-content.page-card) .page-card-head .app-logo {
  border-radius: 0 !important;
  display: block !important;
  height: auto !important;
  margin: 0 auto .38rem !important;
  width: 138px !important;
}

.rz-login-page .for-login .page-card-head h4,
body:has(.login-content.page-card) .for-login .page-card-head h4,
.rz-login-page .for-forgot .page-card-head h4,
.rz-login-page .for-login-with-email-link .page-card-head h4,
.rz-login-page .for-signup .page-card-head h4,
body:has(.login-content.page-card) .for-forgot .page-card-head h4,
body:has(.login-content.page-card) .for-login-with-email-link .page-card-head h4,
body:has(.login-content.page-card) .for-signup .page-card-head h4 {
  color: var(--rz-muted, rgba(0, 0, 0, .58)) !important;
  font-size: .78rem !important;
  font-weight: 600 !important;
  font-family: var(--rz-mono, "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  text-align: center !important;
}

.rz-login-page .page-card-head h4::after,
body:has(.login-content.page-card) .page-card-head h4::after,
.rz-login-page .page-card-head::after,
body:has(.login-content.page-card) .page-card-head::after {
  content: none !important;
}

.rz-login-subtitle {
  display: none !important;
}

.rz-login-page .login-content.page-card,
body:has(.login-content.page-card) .login-content.page-card {
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, .06) !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .08) !important;
  color: var(--rz-ink, rgba(0, 0, 0, .85)) !important;
  margin-top: .95rem !important;
  padding: 1.05rem !important;
}

.rz-login-page .login-content.page-card .rz-login-card-title,
body:has(.login-content.page-card) .login-content.page-card .rz-login-card-title {
  color: var(--rz-ink, rgba(0, 0, 0, .85)) !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  margin: 0 0 .85rem !important;
  text-align: center !important;
}

.rz-login-page .login-content.page-card .form-group,
body:has(.login-content.page-card) .login-content.page-card .form-group {
  margin-bottom: .78rem !important;
  position: relative !important;
}

.rz-login-page .login-content.page-card .form-control,
body:has(.login-content.page-card) .login-content.page-card .form-control {
  background: rgb(248, 249, 250) !important;
  border: 1px solid rgba(0, 0, 0, .06) !important;
  border-radius: 8px !important;
  color: var(--rz-ink, rgba(0, 0, 0, .85)) !important;
  font-size: .94rem !important;
  min-height: 40px !important;
  padding: .62rem 2rem !important;
}

.rz-login-page .login-content.page-card .password-field .form-control,
body:has(.login-content.page-card) .login-content.page-card .password-field .form-control {
  padding-right: 5.65rem !important;
}

.rz-login-page .login-content.page-card .form-control:focus,
body:has(.login-content.page-card) .login-content.page-card .form-control:focus {
  background: #fff !important;
  border-color: rgb(27, 130, 255) !important;
  box-shadow: 0 0 0 4px rgba(27, 130, 255, .12) !important;
}

.rz-login-page .login-content.page-card .field-icon,
body:has(.login-content.page-card) .login-content.page-card .field-icon {
  align-items: center !important;
  color: rgba(0, 0, 0, .48) !important;
  display: flex !important;
  height: 1rem !important;
  justify-content: center !important;
  line-height: 1 !important;
  left: .68rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 1rem !important;
}

.rz-login-page .login-content.page-card .field-icon svg,
body:has(.login-content.page-card) .login-content.page-card .field-icon svg {
  display: block !important;
}

.rz-login-page .login-content.page-card .toggle-password,
body:has(.login-content.page-card) .login-content.page-card .toggle-password {
  align-items: center !important;
  display: flex !important;
  height: 1rem !important;
  line-height: 1 !important;
  right: .72rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

.rz-login-page .login-content.page-card .toggle-password,
.rz-login-page .login-content.page-card .forgot-password-message a,
.rz-login-page .login-content.page-card a,
body:has(.login-content.page-card) .login-content.page-card .toggle-password,
body:has(.login-content.page-card) .login-content.page-card .forgot-password-message a,
body:has(.login-content.page-card) .login-content.page-card a {
  color: rgba(0, 0, 0, .58) !important;
  font-weight: 400 !important;
}

.rz-login-page .login-content.page-card .forgot-password-message a:hover,
.rz-login-page .login-content.page-card a:hover,
body:has(.login-content.page-card) .login-content.page-card .forgot-password-message a:hover,
body:has(.login-content.page-card) .login-content.page-card a:hover {
  color: rgb(27, 130, 255) !important;
  text-decoration: none !important;
}

.rz-login-page .login-content.page-card .btn-primary,
.rz-login-page .login-content.page-card .btn-login,
.rz-login-page .login-content.page-card .btn-forgot,
.rz-login-page .login-content.page-card .btn-login-with-email-link[type="submit"],
.rz-login-page .login-content.page-card button.btn-login-with-email-link,
body:has(.login-content.page-card) .login-content.page-card .btn-primary,
body:has(.login-content.page-card) .login-content.page-card .btn-login,
body:has(.login-content.page-card) .login-content.page-card .btn-forgot,
body:has(.login-content.page-card) .login-content.page-card .btn-login-with-email-link[type="submit"],
body:has(.login-content.page-card) .login-content.page-card button.btn-login-with-email-link {
  background: rgba(0, 0, 0, .85) !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #fff !important;
  font-size: .9rem !important;
  font-weight: 500 !important;
  min-height: 40px !important;
}

.rz-login-page .login-content.page-card .btn-primary:hover,
.rz-login-page .login-content.page-card .btn-login:hover,
.rz-login-page .login-content.page-card .btn-forgot:hover,
.rz-login-page .login-content.page-card .btn-login-with-email-link[type="submit"]:hover,
.rz-login-page .login-content.page-card button.btn-login-with-email-link:hover,
body:has(.login-content.page-card) .login-content.page-card .btn-primary:hover,
body:has(.login-content.page-card) .login-content.page-card .btn-login:hover,
body:has(.login-content.page-card) .login-content.page-card .btn-forgot:hover,
body:has(.login-content.page-card) .login-content.page-card .btn-login-with-email-link[type="submit"]:hover,
body:has(.login-content.page-card) .login-content.page-card button.btn-login-with-email-link:hover {
  background: rgb(56, 56, 56) !important;
}

.rz-login-page .login-content.page-card .login-divider,
body:has(.login-content.page-card) .login-content.page-card .login-divider {
  color: rgba(0, 0, 0, .45) !important;
  margin: .82rem 0 !important;
}

.rz-login-page .login-content.page-card .btn-login-option,
body:has(.login-content.page-card) .login-content.page-card .btn-login-option {
  background: rgb(248, 249, 250) !important;
  border: 1px solid rgba(0, 0, 0, .05) !important;
  border-radius: 8px !important;
  color: rgba(0, 0, 0, .70) !important;
  font-size: .9rem !important;
  min-height: 38px !important;
}

.rz-login-page .login-content.page-card .btn-login-option:hover,
body:has(.login-content.page-card) .login-content.page-card .btn-login-option:hover {
  background: rgba(0, 0, 0, .05) !important;
  color: var(--rz-ink, rgba(0, 0, 0, .85)) !important;
}

@media (max-width: 900px) {
  .rz-page,
  .rz-portal,
  .rz-projects,
  .rz-page.is-narrow {
    max-width: min(100% - 28px, 760px);
    padding-bottom: 2.5rem;
  }

  .rz-topbar,
  .rz-head,
  .rz-projects-head,
  .rz-section-head,
  .rz-project-title {
    align-items: stretch;
    flex-direction: column;
  }

  .rz-hero,
  .rz-row,
  .rz-row.is-support,
  .rz-annotation-summary,
  .rz-annotation-filters,
  .rz-annotation-shell {
    grid-template-columns: 1fr;
  }

  .rz-metrics,
  .rz-counts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rz-nav {
    gap: 1rem;
  }
}

@media (max-width: 520px) {
  .rz-page,
  .rz-portal,
  .rz-projects,
  .rz-page.is-narrow {
    max-width: calc(100% - 24px);
    padding-top: .5rem;
  }

  .rz-brand {
    grid-template-columns: 1fr;
  }

  .rz-brand img {
    grid-row: auto;
    height: 38px;
  }

  .rz-brand h1 {
    font-size: 1.35rem;
  }

  .rz-status-row h2 {
    font-size: clamp(3.8rem, 25vw, 5.1rem);
  }

  .rz-metrics,
  .rz-counts,
  .rz-progress-line {
    grid-template-columns: 1fr;
  }

  .rz-nav,
  .rz-actions,
  .rz-form-actions {
    width: 100%;
  }

  .rz-nav {
    border-bottom: 1px solid var(--rz-line);
    gap: .75rem 1rem;
    padding-bottom: .8rem;
  }

  .rz-button {
    flex: 1 1 100%;
    width: 100%;
  }

  body:has(.login-content.page-card) main.container {
    max-width: calc(100vw - 36px);
    padding-top: 1.25rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rz-nav a,
  .rz-button,
  .rz-input,
  .rz-project-card,
  .rz-project-panel,
  .rz-row {
    transition: none;
  }
}
