:root {
  --carbon-brand1: var(--brand1, #2253f4);
  --carbon-bad: var(--bad, #ff5c7a);
  --carbon-ink: var(--ink, #20242c);
  --carbon-muted: var(--muted, #727783);
  --carbon-line: var(--line, #dde2ea);
  --carbon-paper: var(--paper, #ffffff);
  --carbon-bg: #f6f8fb;
  --carbon-rail-size: 64px;
  --carbon-footer-height: 28px;
  --carbon-toggle-on: #18d62b;
  --bad: #ff5c7a;
  --danger: #ff5c7a;
  --status-cancelled: var(--bad);
}

body.carbon-rail-mounted {
  padding-left: var(--carbon-rail-size) !important;
  box-sizing: border-box;
}

.carbon-rail {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 9000;
  width: var(--carbon-rail-size);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  padding: 14px 8px;
  border-right: 1px solid rgba(30, 38, 54, .08);
  background: rgba(255, 255, 255, .88);
  backdrop-filter: blur(18px) saturate(155%);
  box-shadow: 8px 0 28px rgba(18, 28, 45, .06);
}

.carbon-rail__brand,
.carbon-rail__link {
  color: inherit;
  text-decoration: none;
}

.carbon-rail__brand {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 16px;
  background: var(--carbon-brand1);
  color: #ffffff;
  font-weight: 750;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(34, 83, 244, .22);
}

.carbon-rail__mark {
  transform: translateY(-1px);
}

.carbon-rail__links {
  display: grid;
  gap: 8px;
  width: 100%;
}

.carbon-rail__link {
  min-height: 46px;
  display: grid;
  place-items: center;
  gap: 3px;
  border-radius: 14px;
  color: var(--carbon-muted);
  font: 600 10px/1.1 var(--font-ui, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  transition: background .16s ease, color .16s ease, transform .16s ease;
}

.carbon-rail__link:hover {
  background: rgba(34, 83, 244, .08);
  color: var(--carbon-brand1);
}

.carbon-rail__link.is-active {
  background: rgba(34, 83, 244, .12);
  color: var(--carbon-brand1);
}

.carbon-rail__icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  background: rgba(22, 28, 40, .05);
}

.carbon-rail__icon svg {
  width: 18px;
  height: 18px;
  display: block;
}

.carbon-rail__link.is-active .carbon-rail__icon {
  background: var(--carbon-brand1);
  color: #ffffff;
}

.carbon-rail__label {
  display: block;
  max-width: 48px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.carbon-saas-footer {
  position: fixed;
  left: var(--carbon-rail-size);
  right: 0;
  bottom: 0;
  z-index: 850;
  min-height: var(--carbon-footer-height);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 6px 16px;
  box-sizing: border-box;
  border-top: 1px solid rgba(30, 38, 54, .08);
  background: rgba(255, 255, 255, .88);
  backdrop-filter: blur(16px) saturate(150%);
  color: rgba(32, 36, 44, .58);
  font: 600 11px/1.2 var(--font-ui, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  letter-spacing: 0;
  pointer-events: none;
  user-select: none;
}

.carbon-footer__meta,
.carbon-footer__sync {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
}

.remember-row,
.foundry-gate-remember,
.projctr-remember,
.field .checkbox,
.field > label.checkbox,
.toggle-row.compact-toggle,
.access-option {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
}

.remember-row input[type="checkbox"],
.foundry-gate-remember input[type="checkbox"],
.projctr-remember input[type="checkbox"],
.field .checkbox input[type="checkbox"],
.field > label.checkbox input[type="checkbox"],
.toggle-row.compact-toggle input[type="checkbox"],
.access-option input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  width: 44px;
  min-width: 44px;
  height: 24px;
  min-height: 24px;
  margin: 0;
  border: 1px solid rgba(32, 36, 44, .16);
  border-radius: 999px;
  background: rgba(32, 36, 44, .08);
  box-shadow: inset 0 1px 2px rgba(18, 24, 40, .08);
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.remember-row input[type="checkbox"]::after,
.foundry-gate-remember input[type="checkbox"]::after,
.projctr-remember input[type="checkbox"]::after,
.field .checkbox input[type="checkbox"]::after,
.field > label.checkbox input[type="checkbox"]::after,
.toggle-row.compact-toggle input[type="checkbox"]::after,
.access-option input[type="checkbox"]::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border: 0;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 2px 7px rgba(18, 24, 40, .2);
  transition: transform .18s ease;
}

.remember-row input[type="checkbox"]:checked,
.foundry-gate-remember input[type="checkbox"]:checked,
.projctr-remember input[type="checkbox"]:checked,
.field .checkbox input[type="checkbox"]:checked,
.field > label.checkbox input[type="checkbox"]:checked,
.toggle-row.compact-toggle input[type="checkbox"]:checked,
.access-option input[type="checkbox"]:checked {
  background: var(--carbon-toggle-on);
  border-color: var(--carbon-toggle-on);
}

.remember-row input[type="checkbox"]:checked::after,
.foundry-gate-remember input[type="checkbox"]:checked::after,
.projctr-remember input[type="checkbox"]:checked::after,
.field .checkbox input[type="checkbox"]:checked::after,
.field > label.checkbox input[type="checkbox"]:checked::after,
.toggle-row.compact-toggle input[type="checkbox"]:checked::after,
.access-option input[type="checkbox"]:checked::after {
  transform: translateX(20px);
}

.remember-row input[type="checkbox"]:focus-visible,
.foundry-gate-remember input[type="checkbox"]:focus-visible,
.projctr-remember input[type="checkbox"]:focus-visible,
.field .checkbox input[type="checkbox"]:focus-visible,
.field > label.checkbox input[type="checkbox"]:focus-visible,
.toggle-row.compact-toggle input[type="checkbox"]:focus-visible,
.access-option input[type="checkbox"]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(24, 214, 43, .18), inset 0 1px 2px rgba(18, 24, 40, .08);
}

#pmAllowDupRow > input[type="checkbox"] {
  width: 44px;
  min-width: 44px;
  height: 24px;
  min-height: 24px;
}

.carbon-footer__sync {
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(34, 83, 244, .08);
  color: rgba(34, 83, 244, .92);
  font-weight: 700;
}

body.carbon-footer-mounted {
  padding-bottom: var(--carbon-footer-height);
}

body.carbon-rail-mounted :is(h1, h2, h3, .modal-title, .modal-head h2, .card.card--gate header) {
  letter-spacing: -0.025em !important;
  font-weight: 400;
}

body.carbon-rail-mounted :is(
  .money,
  .invoice-money,
  .bad-amount,
  .zero-amount,
  .income-amount,
  .tax-amount,
  .metric-card strong,
  .control-stat strong,
  .reports-kpi strong,
  .reports-finance-card strong,
  .statement-flow-summary strong,
  .statement-value,
  .bank-card-balance,
  .invoice-meta strong,
  .invoice-total strong
) {
  letter-spacing: -0.025em !important;
}

body.carbon-rail-mounted #toast {
  position: fixed !important;
  top: calc(14px + env(safe-area-inset-top, 0px)) !important;
  right: auto !important;
  bottom: auto !important;
  left: calc(var(--carbon-rail-size) + ((100vw - var(--carbon-rail-size)) / 2)) !important;
  width: auto !important;
  min-width: min(360px, calc(100vw - var(--carbon-rail-size) - 32px)) !important;
  max-width: min(560px, calc(100vw - var(--carbon-rail-size) - 32px)) !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(34, 83, 244, .14) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, .96) !important;
  color: var(--carbon-ink) !important;
  box-shadow: 0 18px 54px rgba(18, 28, 45, .16) !important;
  backdrop-filter: blur(18px) saturate(150%) !important;
  font: 650 14px/1.32 var(--font-ui, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  letter-spacing: 0 !important;
  opacity: 0 !important;
  transform: translateX(-50%) translateY(-12px) !important;
  transition: opacity .22s ease, transform .22s ease !important;
  pointer-events: none !important;
  z-index: 11000 !important;
}

body.carbon-rail-mounted #toast.show {
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
  pointer-events: auto !important;
}

body.carbon-rail-mounted .toast-stack {
  top: calc(14px + env(safe-area-inset-top, 0px)) !important;
  left: calc(var(--carbon-rail-size) + ((100vw - var(--carbon-rail-size)) / 2)) !important;
  transform: translateX(-50%) !important;
  gap: 8px !important;
  z-index: 13000 !important;
}

body.carbon-rail-mounted .toast-stack .toast {
  min-width: min(360px, calc(100vw - var(--carbon-rail-size) - 32px)) !important;
  max-width: min(560px, calc(100vw - var(--carbon-rail-size) - 32px)) !important;
  min-height: 52px !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(34, 83, 244, .14) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, .96) !important;
  color: var(--carbon-ink) !important;
  box-shadow: 0 18px 54px rgba(18, 28, 45, .16) !important;
  backdrop-filter: blur(18px) saturate(150%) !important;
  font: 650 14px/1.32 var(--font-ui, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  letter-spacing: 0 !important;
}

body.carbon-rail-mounted #toast[data-kind="error"],
body.carbon-rail-mounted #toast[data-kind="bad"],
body.carbon-rail-mounted .toast-stack .toast[data-kind="bad"],
body.carbon-rail-mounted .toast-stack .toast[data-kind="error"] {
  border-color: rgba(255, 92, 122, .28) !important;
}

body.carbon-rail-mounted #toast[data-kind="error"] .toast-icon svg,
body.carbon-rail-mounted #toast[data-kind="bad"] .toast-icon svg,
body.carbon-rail-mounted .toast-stack .toast[data-kind="bad"] .icon svg,
body.carbon-rail-mounted .toast-stack .toast[data-kind="error"] .icon svg {
  fill: var(--bad) !important;
  stroke: var(--bad) !important;
}

body.carbon-rail-mounted #toast .toast-icon,
body.carbon-rail-mounted .toast-stack .toast .icon {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(34, 83, 244, .1) !important;
  color: var(--brand1, #2455f4) !important;
}

body.carbon-rail-mounted #toast[data-kind="error"] .toast-icon,
body.carbon-rail-mounted #toast[data-kind="bad"] .toast-icon,
body.carbon-rail-mounted .toast-stack .toast[data-kind="bad"] .icon,
body.carbon-rail-mounted .toast-stack .toast[data-kind="error"] .icon {
  background: rgba(255, 92, 122, .12) !important;
  color: var(--bad) !important;
}

body.carbon-rail-mounted #toast[data-kind="warn"] .toast-icon,
body.carbon-rail-mounted .toast-stack .toast[data-kind="warn"] .icon {
  background: rgba(255, 194, 68, .16) !important;
  color: #d89a00 !important;
}

body.carbon-rail-mounted #toast .toast-icon svg,
body.carbon-rail-mounted .toast-stack .toast .icon svg {
  width: 18px !important;
  height: 18px !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

body.carbon-rail-mounted #toast .toast-text,
body.carbon-rail-mounted .toast-stack .toast span:not(.icon) {
  color: var(--carbon-ink) !important;
  font: inherit !important;
  letter-spacing: 0 !important;
}

body.carbon-rail-mounted .btn.danger,
body.carbon-rail-mounted .danger-button,
body.carbon-rail-mounted .pill-btn.danger,
body.carbon-rail-mounted .primary-btn.danger,
body.carbon-rail-mounted .app-message-card .modal-actions .pill-btn.danger {
  background: var(--bad) !important;
  border-color: var(--bad) !important;
  color: #ffffff !important;
}

body.carbon-rail-mounted .icon-btn.danger,
body.carbon-rail-mounted .invoice-row-action.danger,
body.carbon-rail-mounted .mobile-menu .m-item.danger,
body.carbon-rail-mounted .bad-amount,
body.carbon-rail-mounted .foundry-gate-error,
body.carbon-rail-mounted .login-message.is-bad {
  color: var(--bad) !important;
}

body.carbon-rail-mounted .icon-btn.danger svg,
body.carbon-rail-mounted .invoice-row-action.danger svg,
body.carbon-rail-mounted [aria-label*="Delete" i] svg,
body.carbon-rail-mounted [title*="Delete" i] svg {
  fill: var(--bad) !important;
  stroke: var(--bad) !important;
}

body.carbon-rail-mounted .foundry-gate-modal .card.login-error,
body.carbon-rail-mounted .card.flash-bad,
body.carbon-rail-mounted .login-error {
  border-color: var(--bad) !important;
}

body.carbon-rail-mounted .modal:not(.mobile-menu-modal),
body.carbon-rail-mounted dialog.settings-modal,
body.carbon-rail-mounted dialog.invoice-modal,
body.carbon-rail-mounted dialog.app-message-modal,
body.carbon-rail-mounted dialog.app-mobile-menu-modal {
  z-index: 10020;
}

body.carbon-rail-mounted .modal:not(.mobile-menu-modal) {
  background: rgba(246, 248, 251, .72) !important;
  backdrop-filter: blur(18px) saturate(150%) !important;
}

body.carbon-rail-mounted .modal:not(.mobile-menu-modal) .card,
body.carbon-rail-mounted .invoice-modal-card,
body.carbon-rail-mounted .app-message-card,
body.carbon-rail-mounted .settings-card,
body.carbon-rail-mounted .app-mobile-menu-card {
  border-radius: 18px !important;
  border: 1px solid rgba(32, 36, 44, .1) !important;
  background: var(--carbon-paper) !important;
  color: var(--carbon-ink) !important;
  box-shadow: 0 24px 70px rgba(18, 28, 45, .18) !important;
}

body.carbon-rail-mounted .modal:not(.mobile-menu-modal) header,
body.carbon-rail-mounted .modal-head,
body.carbon-rail-mounted .app-message-card .modal-head.compact {
  color: var(--carbon-brand1) !important;
  letter-spacing: 0 !important;
}

body.carbon-rail-mounted .modal footer,
body.carbon-rail-mounted .modal-actions,
body.carbon-rail-mounted .app-message-card .modal-actions {
  gap: 10px !important;
}

body.carbon-rail-mounted #btnSignOut,
body.carbon-rail-mounted #taskrUserBtn,
body.carbon-rail-mounted #signOutBtn {
  order: 90;
}

body.carbon-rail-mounted #saveStatus {
  order: 100;
}

.carbon-rail-mounted .splash-logo.splash-brandmark,
.carbon-rail-mounted .login-brandmark,
.carbon-rail-mounted .projctr-login-card .splash-brandmark,
.carbon-rail-mounted #publicGate .splash-logo.splash-brandmark {
  width: min(170px, 56vw) !important;
  margin-bottom: 16px !important;
}

.carbon-rail-mounted .login-shell {
  min-height: 100vh;
  padding: 24px;
  background: linear-gradient(180deg, #f7f9fc 0, #f2f5fa 100%) !important;
}

.carbon-rail-mounted .login-card {
  width: min(420px, calc(100vw - 40px));
  padding: 24px;
  border-radius: 18px;
  border: 1px solid rgba(32, 36, 44, .1);
  box-shadow: 0 18px 46px rgba(24, 34, 52, .12);
}

.carbon-rail-mounted .login-copy {
  margin: 10px 0 22px;
  color: var(--carbon-muted);
}

.carbon-rail-mounted .foundry-gate-overlay {
  z-index: 10020;
  background: rgba(246, 248, 251, .86);
  backdrop-filter: blur(18px) saturate(150%);
}

.carbon-rail-mounted .foundry-gate-card,
.carbon-rail-mounted .foundry-gate-modal .card,
.carbon-rail-mounted .modal .card.card--gate {
  width: min(420px, calc(100vw - 40px));
  min-width: 0;
  max-width: 420px;
  padding: 24px;
  border-radius: 18px;
  border: 1px solid rgba(32, 36, 44, .1);
  background: var(--carbon-paper);
  color: var(--carbon-ink);
  box-shadow: 0 18px 46px rgba(24, 34, 52, .14);
}

.carbon-rail-mounted .foundry-gate-modal .card {
  left: 50%;
}

.carbon-rail-mounted .foundry-gate-title,
.carbon-rail-mounted .foundry-gate-modal header,
.carbon-rail-mounted .modal .card.card--gate header,
.carbon-rail-mounted .projctr-login-card header {
  margin-bottom: 8px;
  color: var(--carbon-brand1);
  font-size: 21px;
  line-height: 1.15;
  font-weight: 650;
  letter-spacing: 0;
}

.carbon-rail-mounted .foundry-gate-sub,
.carbon-rail-mounted .foundry-gate-modal .foundry-gate-message,
.carbon-rail-mounted .foundry-gate-remember,
.carbon-rail-mounted .modal .card.card--gate .field label,
.carbon-rail-mounted .foundry-gate-modal .field label,
.carbon-rail-mounted .projctr-login-card .field label,
.carbon-rail-mounted .projctr-remember,
.carbon-rail-mounted .remember-text {
  color: var(--carbon-muted);
}

.carbon-rail-mounted .foundry-gate-input,
.carbon-rail-mounted .foundry-gate-modal input[type="password"],
.carbon-rail-mounted .projctr-login-card input[type="password"],
.carbon-rail-mounted .card.card--gate input[type="password"],
.carbon-rail-mounted .card.card--gate input[type="text"],
.carbon-rail-mounted .card.card--gate input[type="email"] {
  height: 46px;
  border-radius: 12px;
  border: 1px solid rgba(32, 36, 44, .14);
  background: #f7f9fc;
  color: var(--carbon-ink);
  font-size: 15px;
  padding: 0 13px;
}

.carbon-rail-mounted .foundry-gate-input:focus,
.carbon-rail-mounted .foundry-gate-modal input[type="password"]:focus,
.carbon-rail-mounted .projctr-login-card input[type="password"]:focus,
.carbon-rail-mounted .card.card--gate input:focus {
  border-color: rgba(34, 83, 244, .46);
  background: #ffffff;
  outline: none;
  box-shadow: 0 0 0 4px rgba(34, 83, 244, .1);
}

.carbon-rail-mounted .foundry-gate-btn,
.carbon-rail-mounted .foundry-gate-modal .btn.brand,
.carbon-rail-mounted .projctr-login-gate .btn.brand,
.carbon-rail-mounted .card.card--gate footer .btn.brand {
  height: 44px;
  min-width: 104px;
  border-radius: 999px;
  background: var(--carbon-brand1);
  color: #ffffff;
  border: 1px solid var(--carbon-brand1);
  font-size: 14px;
  font-weight: 650;
}

.carbon-rail-mounted .foundry-gate-modal .btn:not(.brand),
.carbon-rail-mounted .card.card--gate footer .btn.ghost {
  height: 44px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--carbon-muted);
  border: 1px solid var(--carbon-line);
}

.carbon-rail-mounted .foundry-gate-error,
.carbon-rail-mounted #projctrLoginError,
.carbon-rail-mounted .login-message.is-bad {
  color: var(--carbon-bad);
}

.carbon-rail-mounted .projctr-remember input[type="checkbox"] {
  border-color: rgba(32, 36, 44, .22);
  background: rgba(32, 36, 44, .08);
}

.carbon-rail-mounted .projctr-remember input[type="checkbox"]:checked {
  background: var(--carbon-toggle-on);
  border-color: var(--carbon-toggle-on);
}

.carbon-rail-mounted .projctr-remember input[type="checkbox"]::after {
  border-color: #ffffff;
}

body.carbon-rail-mounted .login-shell,
body.carbon-rail-mounted .foundry-gate-overlay,
body.carbon-rail-mounted .carbon-auth-backdrop {
  background: rgba(246, 248, 252, .82) !important;
  backdrop-filter: blur(28px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(28px) saturate(180%) !important;
}

body.carbon-rail-mounted .login-card,
body.carbon-rail-mounted .carbon-auth-card,
body.carbon-rail-mounted .foundry-gate-card,
body.carbon-rail-mounted .foundry-gate-modal .card,
body.carbon-rail-mounted .modal .card.card--gate,
body.carbon-rail-mounted .projctr-login-gate .card {
  background: var(--carbon-paper) !important;
  border: 1px solid var(--carbon-line) !important;
  border-radius: 28px !important;
  box-shadow: 0 20px 58px rgba(30, 38, 64, .13) !important;
  color: var(--carbon-ink) !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 32px !important;
  width: min(560px, calc(100vw - var(--carbon-rail-size) - 40px)) !important;
}

body.carbon-rail-mounted .projctr-login-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--carbon-ink) !important;
  gap: clamp(16px, 2.4vw, 26px) !important;
  padding: 0 !important;
}

body.carbon-rail-mounted .login-brandmark,
body.carbon-rail-mounted .carbon-auth-card img,
body.carbon-rail-mounted .projctr-login-card .splash-brandmark,
body.carbon-rail-mounted .splash-logo.splash-brandmark {
  height: auto !important;
  margin: 0 0 20px !important;
  opacity: 1 !important;
  width: min(220px, 54vw) !important;
}

body.carbon-rail-mounted .foundry-gate-title,
body.carbon-rail-mounted .foundry-gate-modal header,
body.carbon-rail-mounted .modal .card.card--gate header,
body.carbon-rail-mounted .projctr-login-card header,
body.carbon-rail-mounted .login-card h1,
body.carbon-rail-mounted .carbon-auth-card h2 {
  color: var(--carbon-brand1) !important;
  font-family: var(--font-title, var(--font-ui, system-ui, sans-serif)) !important;
  font-size: 36px !important;
  font-weight: 430 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  margin: 0 0 18px !important;
}

body.carbon-rail-mounted .foundry-gate-sub,
body.carbon-rail-mounted .foundry-gate-modal .foundry-gate-message,
body.carbon-rail-mounted .gate-kicker,
body.carbon-rail-mounted .login-copy,
body.carbon-rail-mounted .carbon-auth-card .eyebrow {
  color: var(--carbon-muted) !important;
  font-size: 18px !important;
  font-weight: 430 !important;
  line-height: 1.45 !important;
}

body.carbon-rail-mounted .foundry-gate-form,
body.carbon-rail-mounted .login-form,
body.carbon-rail-mounted .carbon-auth-card,
body.carbon-rail-mounted .modal .card.card--gate section,
body.carbon-rail-mounted .projctr-login-card {
  gap: 18px !important;
}

body.carbon-rail-mounted .foundry-gate-label,
body.carbon-rail-mounted .login-form label,
body.carbon-rail-mounted .carbon-auth-card label:not(.remember-row),
body.carbon-rail-mounted .modal .card.card--gate .field label,
body.carbon-rail-mounted .foundry-gate-modal .field label,
body.carbon-rail-mounted .projctr-login-card .field label,
body.carbon-rail-mounted .remember-row,
body.carbon-rail-mounted .foundry-gate-remember,
body.carbon-rail-mounted .projctr-remember,
body.carbon-rail-mounted .remember-text {
  color: #555 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body.carbon-rail-mounted .foundry-gate-input,
body.carbon-rail-mounted .login-form input,
body.carbon-rail-mounted .carbon-auth-card input.input,
body.carbon-rail-mounted .foundry-gate-modal input[type="password"],
body.carbon-rail-mounted .projctr-login-card input[type="password"],
body.carbon-rail-mounted .card.card--gate input[type="password"],
body.carbon-rail-mounted .card.card--gate input[type="text"],
body.carbon-rail-mounted .card.card--gate input[type="email"] {
  background: rgba(34, 83, 244, .09) !important;
  border: 1px solid transparent !important;
  border-radius: 14px !important;
  color: var(--carbon-ink) !important;
  font-size: 18px !important;
  height: 56px !important;
  padding: 0 clamp(18px, 2.4vw, 24px) !important;
}

body.carbon-rail-mounted .foundry-gate-input:focus,
body.carbon-rail-mounted .login-form input:focus,
body.carbon-rail-mounted .carbon-auth-card input.input:focus,
body.carbon-rail-mounted .foundry-gate-modal input[type="password"]:focus,
body.carbon-rail-mounted .projctr-login-card input[type="password"]:focus,
body.carbon-rail-mounted .card.card--gate input:focus {
  background: rgba(34, 83, 244, .12) !important;
  border-color: rgba(34, 83, 244, .36) !important;
  box-shadow: none !important;
  outline: none !important;
}

body.carbon-rail-mounted .foundry-gate-btn,
body.carbon-rail-mounted .foundry-gate-modal .btn.brand,
body.carbon-rail-mounted .projctr-login-gate .btn.brand,
body.carbon-rail-mounted .card.card--gate footer .btn.brand,
body.carbon-rail-mounted .login-form .primary-btn,
body.carbon-rail-mounted .carbon-auth-card .primary-button {
  background: var(--carbon-brand1) !important;
  border: 1px solid var(--carbon-brand1) !important;
  border-radius: 999px !important;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 430 !important;
  height: 56px !important;
  min-width: min(190px, 100%) !important;
  padding: 0 clamp(26px, 4vw, 42px) !important;
}

body.carbon-rail-mounted .card.card--gate footer .btn.ghost,
body.carbon-rail-mounted .foundry-gate-modal .btn:not(.brand) {
  background: #fff !important;
  border: 1px solid rgba(34, 83, 244, .28) !important;
  border-radius: 999px !important;
  color: var(--carbon-brand1) !important;
  height: clamp(48px, 6.5vw, 64px) !important;
  padding: 0 clamp(20px, 3vw, 30px) !important;
}

body.carbon-rail-mounted .remember-row input[type="checkbox"],
body.carbon-rail-mounted .foundry-gate-remember input[type="checkbox"],
body.carbon-rail-mounted .projctr-remember input[type="checkbox"] {
  background: #d9dde6 !important;
  border: 1px solid rgba(25, 31, 46, .18) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 3px rgba(25, 31, 46, .16) !important;
  height: 32px !important;
  min-height: 32px !important;
  min-width: 58px !important;
  width: 58px !important;
}

body.carbon-rail-mounted .remember-row input[type="checkbox"]::after,
body.carbon-rail-mounted .foundry-gate-remember input[type="checkbox"]::after,
body.carbon-rail-mounted .projctr-remember input[type="checkbox"]::after {
  box-shadow: 0 2px 10px rgba(25, 31, 46, .18) !important;
  height: 26px !important;
  left: 3px !important;
  top: 2px !important;
  width: 26px !important;
}

body.carbon-rail-mounted .remember-row input[type="checkbox"]:checked,
body.carbon-rail-mounted .foundry-gate-remember input[type="checkbox"]:checked,
body.carbon-rail-mounted .projctr-remember input[type="checkbox"]:checked {
  background: var(--carbon-toggle-on) !important;
  border-color: var(--carbon-toggle-on) !important;
}

body.carbon-rail-mounted .remember-row input[type="checkbox"]:checked::after,
body.carbon-rail-mounted .foundry-gate-remember input[type="checkbox"]:checked::after,
body.carbon-rail-mounted .projctr-remember input[type="checkbox"]:checked::after {
  transform: translateX(26px) !important;
}

body.carbon-rail-mounted .modal .card.card--gate .switch,
body.carbon-rail-mounted .remember-field .switch {
  --toggle-width: 58px !important;
  --toggle-height: 32px !important;
  flex: 0 0 58px !important;
}

body.carbon-rail-mounted .modal .card.card--gate .switch .slider::after,
body.carbon-rail-mounted .remember-field .switch .slider::after {
  height: 26px !important;
  left: 3px !important;
  top: 2px !important;
  width: 26px !important;
}

body.carbon-rail-mounted .modal .card.card--gate .switch input:checked + .slider::after,
body.carbon-rail-mounted .remember-field .switch input:checked + .slider::after {
  transform: translateX(26px) !important;
}

@media (max-width: 720px) {
  body.carbon-rail-mounted {
    padding-left: 0 !important;
    padding-bottom: 62px !important;
  }

  body.carbon-rail-mounted.carbon-footer-mounted {
    padding-bottom: calc(98px + env(safe-area-inset-bottom)) !important;
  }

  body.carbon-rail-mounted .login-card,
  body.carbon-rail-mounted .carbon-auth-card,
  body.carbon-rail-mounted .foundry-gate-card,
  body.carbon-rail-mounted .foundry-gate-modal .card,
  body.carbon-rail-mounted .modal .card.card--gate,
  body.carbon-rail-mounted .projctr-login-gate .card {
    border-radius: 28px !important;
    padding: 28px !important;
    width: min(520px, calc(100vw - 28px)) !important;
  }

  body.carbon-rail-mounted .foundry-gate-title,
  body.carbon-rail-mounted .foundry-gate-modal header,
  body.carbon-rail-mounted .modal .card.card--gate header,
  body.carbon-rail-mounted .projctr-login-card header,
  body.carbon-rail-mounted .login-card h1,
  body.carbon-rail-mounted .carbon-auth-card h2 {
    font-size: 32px !important;
  }

  body.carbon-rail-mounted .foundry-gate-sub,
  body.carbon-rail-mounted .foundry-gate-modal .foundry-gate-message,
  body.carbon-rail-mounted .gate-kicker,
  body.carbon-rail-mounted .login-copy,
  body.carbon-rail-mounted .carbon-auth-card .eyebrow,
  body.carbon-rail-mounted .foundry-gate-label,
  body.carbon-rail-mounted .login-form label,
  body.carbon-rail-mounted .carbon-auth-card label:not(.remember-row),
  body.carbon-rail-mounted .modal .card.card--gate .field label,
  body.carbon-rail-mounted .foundry-gate-modal .field label,
  body.carbon-rail-mounted .projctr-login-card .field label,
  body.carbon-rail-mounted .remember-row,
  body.carbon-rail-mounted .foundry-gate-remember,
  body.carbon-rail-mounted .projctr-remember,
  body.carbon-rail-mounted .remember-text {
    font-size: 15px !important;
  }

  body.carbon-rail-mounted .foundry-gate-input,
  body.carbon-rail-mounted .login-form input,
  body.carbon-rail-mounted .carbon-auth-card input.input,
  body.carbon-rail-mounted .foundry-gate-modal input[type="password"],
  body.carbon-rail-mounted .projctr-login-card input[type="password"],
  body.carbon-rail-mounted .card.card--gate input[type="password"],
  body.carbon-rail-mounted .card.card--gate input[type="text"],
  body.carbon-rail-mounted .card.card--gate input[type="email"],
  body.carbon-rail-mounted .foundry-gate-btn,
  body.carbon-rail-mounted .foundry-gate-modal .btn.brand,
  body.carbon-rail-mounted .projctr-login-gate .btn.brand,
  body.carbon-rail-mounted .card.card--gate footer .btn.brand,
  body.carbon-rail-mounted .login-form .primary-btn,
  body.carbon-rail-mounted .carbon-auth-card .primary-button {
    height: 52px !important;
  }

  .carbon-saas-footer {
    left: max(10px, env(safe-area-inset-left));
    right: max(10px, env(safe-area-inset-right));
    bottom: calc(76px + env(safe-area-inset-bottom));
    min-height: 24px;
    padding: 5px 12px;
    border: 1px solid rgba(30, 38, 54, .1);
    border-radius: 999px;
    box-shadow: 0 10px 26px rgba(18, 28, 45, .14);
    font-size: 10px;
  }

  .carbon-rail {
    inset: auto 10px 10px;
    width: auto;
    height: 54px;
    flex-direction: row;
    justify-content: center;
    gap: 8px;
    padding: 7px;
    border: 1px solid rgba(30, 38, 54, .1);
    border-radius: 20px;
    box-shadow: 0 16px 42px rgba(18, 28, 45, .18);
  }

  .carbon-rail__brand {
    width: 38px;
    height: 38px;
    border-radius: 14px;
  }

  .carbon-rail__links {
    grid-auto-flow: column;
    grid-auto-columns: 42px;
    gap: 4px;
    width: auto;
  }

  .carbon-rail__link {
    min-height: 40px;
    border-radius: 13px;
  }

  .carbon-rail__icon {
    width: 28px;
    height: 28px;
  }

  .carbon-rail__label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }
}

body.carbon-rail-mounted .modal.foundry-gate-modal.projctr-login-gate .card {
  border-radius: 28px !important;
}
