:root {
  --soda-mobile-bg: #fff;
  --soda-mobile-status-bg: #fff;
  --soda-mobile-status-bar-bg: #fff;
  --soda-mobile-panel: #fff;
  --soda-mobile-text: #3f3b50;
  --soda-mobile-muted: #8f8d9c;
  --soda-mobile-border: rgba(75, 70, 92, 0.18);
  --soda-mobile-primary: #7367f0;
  --soda-mobile-primary-soft: rgba(115, 103, 240, 0.12);
  --soda-mobile-shadow: 0 1.25rem 3.5rem rgba(75, 70, 92, 0.16);
  --soda-mobile-auth-overlay: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, rgba(245, 245, 249, 0.96) 58%, rgba(245, 245, 249, 1) 100%);
  --soda-mobile-app-overlay: linear-gradient(180deg, rgba(255, 255, 255, 0.84) 0%, rgba(255, 255, 255, 0.91) 48%, rgba(255, 255, 255, 0.98) 100%);
  --soda-mobile-card-bg: rgba(255, 255, 255, 0.86);
  --soda-mobile-panel-bg: rgba(255, 255, 255, 0.9);
  --soda-mobile-sticky-header-bg: #fff;
  --soda-mobile-control-bg: rgba(255, 255, 255, 0.8);
  --soda-mobile-soft-button-bg: color-mix(in srgb, var(--soda-mobile-panel) 84%, var(--soda-mobile-muted) 16%);
  --soda-mobile-card-shadow: rgba(75, 70, 92, 0.09);
  --soda-mobile-card-press-bg: rgba(115, 103, 240, 0.08);
  --soda-mobile-avatar-inner-border: var(--soda-mobile-panel);
  --soda-mobile-content-gutter: clamp(0.75rem, 3vw, 1.25rem);
  --soda-mobile-app-inline-padding: 1rem;
  --soda-mobile-list-panel-inline-padding: 0.82rem;
  --soda-mobile-logo-trim: 0.2rem;
  --soda-mobile-app-bg-image: url("../assets/login-wave.webp");
  --soda-mobile-app-bg-position-image: 42% -5rem;
  --soda-mobile-app-bg-size-image: auto 64rem;
  --soda-mobile-viewport-height: 100svh;
  --soda-mobile-top-bar-height: 3.5rem;
  --soda-mobile-view-bar-height: 4.65rem;
  --soda-mobile-bottom-bar-height: 3.75rem;
  --soda-mobile-shell-top: calc(env(safe-area-inset-top) + var(--soda-mobile-top-bar-height) + var(--soda-mobile-view-bar-height));
  --soda-mobile-shell-bottom: calc(env(safe-area-inset-bottom) + var(--soda-mobile-bottom-bar-height) + 0.55rem);
  --soda-mobile-sticky-wallpaper-offset-y: -5.15rem;
  --soda-mobile-control-shadow: 0 0.22rem 0.55rem rgba(75, 70, 92, 0.045);
  --soda-mobile-module-icon-stroke: 1.6;
  --soda-mobile-slide-duration: 0.68s;
  --soda-mobile-slide-easing: cubic-bezier(0.22, 1, 0.36, 1);
  --soda-mobile-leave-fade-duration: 0.05s;
  --soda-mobile-header-line-1-duration: 0.5s;
  --soda-mobile-header-line-2-duration: 0.66s;
  --soda-mobile-header-line-1-delay: 0.03s;
  --soda-mobile-header-line-2-delay: 0.08s;
  --soda-mobile-header-line-1-offset: 100vw;
  --soda-mobile-header-line-2-offset: 100vw;
  --soda-mobile-header-back-fade-duration: 0.16s;
  --soda-mobile-mail-tag-company-color: color-mix(in srgb, var(--bs-primary, #7367f0) 80%, var(--soda-mobile-text) 20%);
  --soda-mobile-mail-tag-important-color: color-mix(in srgb, var(--bs-danger, #ea5455) 82%, var(--soda-mobile-text) 18%);
  --soda-mobile-mail-tag-private-color: color-mix(in srgb, var(--bs-success, #28c76f) 80%, var(--soda-mobile-text) 20%);
  --soda-mobile-mail-tag-system-color: color-mix(in srgb, var(--bs-warning, #ff9f43) 84%, var(--soda-mobile-text) 16%);
  --soda-mobile-mail-tag-secondary-color: color-mix(in srgb, var(--bs-secondary-color, var(--soda-mobile-muted)) 78%, var(--soda-mobile-text) 22%);
}

[data-bs-theme="dark"] {
  --soda-mobile-bg: #171622;
  --soda-mobile-status-bg: #171622;
  --soda-mobile-status-bar-bg: #171622;
  --soda-mobile-panel: #252434;
  --soda-mobile-text: #f0eefb;
  --soda-mobile-muted: #aaa6bd;
  --soda-mobile-border: rgba(230, 226, 255, 0.16);
  --soda-mobile-primary-soft: rgba(115, 103, 240, 0.2);
  --soda-mobile-shadow: 0 1.25rem 3.5rem rgba(0, 0, 0, 0.34);
  --soda-mobile-auth-overlay: linear-gradient(180deg, rgba(27, 25, 39, 0.88) 0%, rgba(23, 22, 34, 0.96) 58%, rgba(23, 22, 34, 1) 100%);
  --soda-mobile-app-overlay: linear-gradient(180deg, rgba(27, 25, 39, 0.82) 0%, rgba(23, 22, 34, 0.9) 48%, rgba(23, 22, 34, 0.98) 100%);
  --soda-mobile-card-bg: rgba(37, 36, 52, 0.86);
  --soda-mobile-panel-bg: rgba(37, 36, 52, 0.92);
  --soda-mobile-sticky-header-bg: #171622;
  --soda-mobile-control-bg: rgba(37, 36, 52, 0.82);
  --soda-mobile-soft-button-bg: color-mix(in srgb, var(--soda-mobile-panel) 82%, var(--soda-mobile-muted) 18%);
  --soda-mobile-card-shadow: rgba(0, 0, 0, 0.22);
  --soda-mobile-card-press-bg: rgba(115, 103, 240, 0.16);
  --soda-mobile-control-shadow: 0 0.22rem 0.55rem rgba(0, 0, 0, 0.12);
}

* {
  -webkit-tap-highlight-color: transparent;
}

html,
body {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-height: 100%;
  overflow-x: hidden;
  overscroll-behavior-x: none;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

html {
  background: var(--soda-mobile-status-bg);
}

body {
  margin: 0;
  color: var(--soda-mobile-text);
  background: var(--soda-mobile-status-bg);
  font-family: "Public Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a,
button,
input,
select,
textarea {
  touch-action: pan-y;
}

body[data-soda-mobile-shadows="off"] {
  --soda-mobile-shadow: none;
  --soda-mobile-card-shadow: transparent;
  --soda-mobile-control-shadow: none;
}

body[data-soda-mobile-page="app"] {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  min-height: 100svh;
  min-height: var(--soda-mobile-viewport-height, 100svh);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-x: none;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
}

body[data-soda-mobile-page="app"]::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  background-color: var(--soda-mobile-bg);
  background-image:
    var(--soda-mobile-app-overlay),
    var(--soda-mobile-app-bg-image);
  background-position:
    center top,
    var(--soda-mobile-app-bg-position-image);
  background-size:
    100% var(--soda-mobile-viewport-height, 100svh),
    var(--soda-mobile-app-bg-size-image);
  background-repeat: no-repeat;
  pointer-events: none;
}

body[data-soda-mobile-page="app"],
body[data-soda-mobile-page="login"] {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

body[data-soda-mobile-page="app"] input,
body[data-soda-mobile-page="app"] textarea,
body[data-soda-mobile-page="app"] select,
body[data-soda-mobile-page="app"] [contenteditable="true"],
body[data-soda-mobile-page="login"] input,
body[data-soda-mobile-page="login"] textarea,
body[data-soda-mobile-page="login"] select,
body[data-soda-mobile-page="login"] [contenteditable="true"] {
  -webkit-touch-callout: default;
  -webkit-user-select: text;
  user-select: text;
}

body[data-soda-mobile-page="login"] {
  position: fixed;
  inset: 0;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  height: 100vh;
  height: 100dvh;
  height: 100svh;
  height: var(--soda-mobile-viewport-height, 100svh);
  background:
    var(--soda-mobile-auth-overlay),
    var(--soda-mobile-app-bg-image) center top / cover no-repeat;
  overscroll-behavior: none;
  touch-action: none;
}

.soda-mobile-auth {
  position: fixed;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  height: 100svh;
  height: var(--soda-mobile-viewport-height, 100svh);
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.75rem;
  background:
    var(--soda-mobile-auth-overlay),
    url("../assets/login-wave.webp") center top / cover no-repeat;
}

.soda-mobile-auth::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 22%, rgba(115, 103, 240, 0.16), transparent 34%),
    radial-gradient(circle at 86% 22%, rgba(0, 186, 209, 0.11), transparent 30%);
}

.soda-mobile-splash {
  position: fixed;
  inset: 0;
  z-index: 1800;
  min-height: 100vh;
  min-height: 100dvh;
  min-height: 100svh;
  min-height: var(--soda-mobile-viewport-height, 100svh);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: max(1.25rem, env(safe-area-inset-top)) var(--soda-mobile-content-gutter) max(1.25rem, env(safe-area-inset-bottom));
  background:
    var(--soda-mobile-auth-overlay),
    var(--soda-mobile-app-bg-image) center top / cover no-repeat;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition:
    opacity 0.22s ease-out,
    visibility 0.22s ease-out;
}

.soda-mobile-splash::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 22%, rgba(115, 103, 240, 0.18), transparent 34%),
    radial-gradient(circle at 84% 24%, rgba(0, 186, 209, 0.12), transparent 30%);
}

.soda-mobile-splash__brand {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  transform: translate3d(0, -0.6rem, 0);
  animation: soda-mobile-splash-enter 0.28s ease-out both;
}

.soda-mobile-splash__brand-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.8rem, 3.8vw, 1.05rem);
}

.soda-mobile-splash__logo {
  position: relative;
  top: -0.54rem;
  width: clamp(4.35rem, 18vw, 5.65rem);
  height: auto;
  transform: scale(0.88);
  transform-origin: right center;
}

.soda-mobile-splash__brand-title {
  display: inline-grid;
  justify-items: end;
  line-height: 1;
}

.soda-mobile-splash__brand-name {
  color: var(--soda-mobile-text);
  font-size: clamp(2.75rem, 12.5vw, 4rem);
  font-weight: 800;
  line-height: 0.92;
}

.soda-mobile-splash__brand-subtitle {
  margin-top: 0.12rem;
  color: var(--soda-mobile-muted);
  font-size: clamp(0.72rem, 3.25vw, 0.96rem);
  font-weight: 800;
  line-height: 1;
}

.soda-mobile-splash__loader {
  position: absolute;
  top: calc(100% + 1.15rem);
  right: 0;
  left: clamp(0.52rem, 2.16vw, 0.68rem);
  width: auto;
  height: 0.24rem;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(143, 141, 156, 0.18);
}

.soda-mobile-splash__loader::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 42%;
  border-radius: inherit;
  background: var(--soda-mobile-primary);
  box-shadow: 0 0 1.1rem rgba(115, 103, 240, 0.34);
  animation: soda-mobile-splash-loader 1.85s ease-in-out infinite;
}

body[data-soda-mobile-auth-state="checking"] .soda-mobile-login,
body[data-soda-mobile-auth-state="redirecting"] .soda-mobile-login,
body[data-soda-mobile-app-state="boot"] .soda-mobile-app {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

body[data-soda-mobile-auth-state="ready"] .soda-mobile-splash--login,
body[data-soda-mobile-app-state="ready"] .soda-mobile-splash--app {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

body[data-soda-mobile-auth-state="ready"] .soda-mobile-login,
body[data-soda-mobile-app-state="ready"] .soda-mobile-app {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

body[data-soda-mobile-app-state="ready"] .soda-mobile-app {
  transition: opacity 0.18s ease-out;
}

@keyframes soda-mobile-splash-enter {
  from {
    opacity: 0;
    transform: translate3d(0, -0.6rem, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, -0.6rem, 0);
  }
}

@keyframes soda-mobile-splash-loader {
  0% {
    transform: translateX(-125%);
  }

  50% {
    transform: translateX(80%);
  }

  100% {
    transform: translateX(260%);
  }
}

.soda-mobile-login {
  position: relative;
  z-index: 1;
  width: min(100%, 29rem);
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  padding: max(1.25rem, env(safe-area-inset-top)) var(--soda-mobile-content-gutter) max(0.9rem, env(safe-area-inset-bottom));
  transition: opacity 0.18s ease-out;
}

.soda-mobile-login__header {
  position: relative;
  z-index: 2;
  min-height: 3.35rem;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.soda-mobile-login__brandmark {
  display: inline-grid;
  justify-items: center;
  gap: 0.08rem;
  margin-left: calc(-1 * var(--soda-mobile-logo-trim));
  text-align: center;
}

.soda-mobile-login__theme-toggle {
  flex: 0 0 auto;
  margin-top: 0.05rem;
}

.soda-mobile-login__content {
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(0.75rem, 3.2svh, 1.8rem) 0;
  transform: translate3d(0, calc(-1 * clamp(2.65rem, 7.5svh, 4.75rem)), 0);
}

.soda-mobile-login__intro {
  margin: 0 0 2.2rem;
}

.soda-mobile-login h1 {
  margin: 0 0 0.65rem;
  color: var(--soda-mobile-text);
  font-size: clamp(1.95rem, 8.8vw, 2.55rem);
  font-weight: 800;
  line-height: 1.1;
}

.soda-mobile-login p {
  margin: 0;
  color: var(--soda-mobile-muted);
  font-size: clamp(1rem, 4.4vw, 1.22rem);
  font-weight: 600;
  line-height: 1.32;
}

.soda-mobile-login__slogan {
  display: block !important;
  width: 100%;
  height: calc(2em * 1.32);
  line-height: 1.32;
  overflow: hidden;
  transform-origin: top;
  transition: transform 0.55s ease, opacity 0.55s ease;
}

.soda-mobile-login__slogan.flip-hide {
  transform: rotateX(90deg);
  opacity: 0;
}

.soda-mobile-login__slogan.flip-show {
  transform: rotateX(0deg);
  opacity: 1;
}

.soda-mobile-login__form {
  padding: 1.25rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  background: var(--soda-mobile-panel-bg);
  box-shadow: var(--soda-mobile-shadow);
  backdrop-filter: blur(8px);
}

.soda-mobile-login__form--hidden {
  display: none;
}

.soda-mobile-login__form-copy {
  margin-bottom: 1.25rem;
}

.soda-mobile-login__form-copy h2 {
  margin: 0 0 0.35rem;
  color: var(--soda-mobile-text);
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-login__form-copy p {
  color: var(--soda-mobile-muted);
  font-size: 0.95rem;
  font-weight: 600;
}

.soda-mobile-login__form .form-label {
  margin-bottom: 0.5rem;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 700;
}

.soda-mobile-input {
  position: relative;
}

.soda-mobile-input .form-control {
  min-height: 3.1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-color: var(--soda-mobile-border);
  border-radius: 0.5rem;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 600;
  background: var(--soda-mobile-panel);
}

.soda-mobile-input .form-control:focus {
  border-color: var(--soda-mobile-primary);
  box-shadow: 0 0 0 0.22rem rgba(115, 103, 240, 0.14);
}

.soda-mobile-input+.invalid-feedback {
  margin-top: 0.45rem;
  font-size: 0.78rem;
  font-weight: 600;
}

.soda-mobile-input--password .form-control {
  padding-right: 3.2rem;
}

.soda-mobile-password-toggle {
  position: absolute;
  top: 50%;
  right: 0.35rem;
  z-index: 3;
  width: 2.65rem;
  height: 2.65rem;
  border: 0;
  border-radius: 0.5rem;
  color: var(--soda-mobile-muted);
  background: transparent;
  transform: translateY(-50%);
}

.soda-mobile-password-toggle .icon-base {
  font-size: 1.25rem;
}

.soda-mobile-login__submit {
  width: 100%;
  min-height: 3.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  border-radius: 0.5rem;
  font-size: 1rem;
  font-weight: 800;
  box-shadow: 0 0.75rem 1.6rem rgba(115, 103, 240, 0.28);
}

.soda-mobile-login__submit:disabled {
  opacity: 0.72;
  box-shadow: none;
}

.soda-mobile-login__secondary {
  width: 100%;
  min-height: 2.8rem;
  margin-top: 0.85rem;
  color: var(--soda-mobile-primary);
  font-size: 0.95rem;
  font-weight: 700;
  border: 0;
  background: transparent;
}

.soda-mobile-tfa,
.soda-mobile-pairing-code {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.45rem;
}

.soda-mobile-pairing-code {
  grid-template-columns: repeat(3, minmax(0, 1fr)) 0.8rem repeat(3, minmax(0, 1fr));
  gap: 0.42rem;
}

.soda-mobile-tfa__digit,
.soda-mobile-pairing-code__digit {
  min-height: 3.05rem;
  padding: 0.35rem;
  border-color: var(--soda-mobile-border);
  border-radius: 0.5rem;
  color: var(--soda-mobile-text);
  font-size: 1.25rem;
  font-weight: 800;
  text-align: center;
}

.soda-mobile-pairing-code__separator {
  min-height: 3.05rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--soda-mobile-muted);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}

.soda-mobile-tfa__digit:focus,
.soda-mobile-pairing-code__digit:focus {
  border-color: var(--soda-mobile-primary);
  box-shadow: 0 0 0 0.22rem rgba(115, 103, 240, 0.14);
}

.soda-mobile-login__status {
  min-height: 1.25rem;
  margin-top: 1rem !important;
  text-align: center;
  color: var(--soda-mobile-muted);
  font-size: 0.86rem !important;
}

.soda-mobile-login__status.is-success {
  color: var(--soda-mobile-primary);
}

.soda-mobile-login__status.is-error,
.soda-mobile-app__status.is-error {
  color: #ea5455;
}

.soda-mobile-login__footer {
  color: rgba(143, 141, 156, 0.78);
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1;
  text-align: center;
}


.soda-mobile-offline {
  text-align: center;
}

.soda-mobile-app {
  position: relative;
  overflow: visible;
  width: 100%;
  max-width: 100%;
  min-height: 0;
  min-height: 100vh;
  min-height: 100dvh;
  min-height: 100svh;
  min-height: var(--soda-mobile-viewport-height, 100svh);
  box-sizing: border-box;
  display: block;
  padding: var(--soda-mobile-shell-top) var(--soda-mobile-app-inline-padding) var(--soda-mobile-shell-bottom);
  color: var(--soda-mobile-text);
  background: transparent;
  z-index: 1;
}

.soda-mobile-app,
.soda-mobile-app *,
.soda-mobile-app *::before,
.soda-mobile-app *::after {
  box-sizing: border-box;
}

.soda-mobile-app__header {
  position: fixed;
  top: env(safe-area-inset-top);
  right: 0;
  left: 0;
  z-index: 80;
  display: flex;
  align-items: flex-start;
  min-height: calc(var(--soda-mobile-shell-top) - env(safe-area-inset-top));
  margin-bottom: 0;
  padding: 0 var(--soda-mobile-app-inline-padding);
  border-bottom: 1px solid transparent;
  background-color: var(--soda-mobile-bg);
  background-image:
    var(--soda-mobile-app-overlay),
    var(--soda-mobile-app-bg-image);
  background-position:
    center top,
    var(--soda-mobile-app-bg-position-image);
  background-size:
    100% var(--soda-mobile-viewport-height, 100svh),
    var(--soda-mobile-app-bg-size-image);
  background-repeat: no-repeat;
  transition: border-color 0.16s ease-out;
}

.soda-mobile-app__header::before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 200;
  height: env(safe-area-inset-top);
  background-color: var(--soda-mobile-status-bar-bg);
  background-image:
    var(--soda-mobile-app-overlay),
    var(--soda-mobile-app-bg-image);
  background-position:
    center top,
    var(--soda-mobile-app-bg-position-image);
  background-size:
    100% var(--soda-mobile-viewport-height, 100svh),
    var(--soda-mobile-app-bg-size-image);
  background-repeat: no-repeat;
  pointer-events: none;
}

body.soda-mobile-topbar-scrolled .soda-mobile-app__header {
  border-bottom-color: var(--soda-mobile-border);
}

body[data-soda-mobile-header-spacing="balanced"] .soda-mobile-app__header {
  margin-bottom: 0;
}

.soda-mobile-app__brand {
  display: inline-grid;
  justify-items: center;
  gap: 0.08rem;
  margin-left: calc(-1 * var(--soda-mobile-logo-trim));
  padding: 0;
  border: 0;
  text-align: center;
  color: inherit;
  background: transparent;
  cursor: default;
  appearance: none;
  -webkit-appearance: none;
  pointer-events: none;
}

.soda-mobile-app__brand-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.62rem;
}

.soda-mobile-app__logo {
  position: relative;
  top: -0.22rem;
  width: 2.9rem;
  height: auto;
  transform: scale(0.88);
  transform-origin: right center;
}

.soda-mobile-app__brand-title {
  display: inline-grid;
  justify-items: end;
  line-height: 1;
}

.soda-mobile-app__brand-name {
  color: var(--soda-mobile-text);
  font-size: 1.72rem;
  font-weight: 800;
  line-height: 1;
}

.soda-mobile-app__brand-subtitle {
  margin-top: -0.02rem;
  color: var(--soda-mobile-muted);
  font-size: 0.46rem;
  font-weight: 700;
  line-height: 1;
}

.soda-mobile-app__actions {
  position: absolute;
  top: 0.28rem;
  right: var(--soda-mobile-app-inline-padding);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.soda-mobile-header-action {
  position: relative;
  width: 2.75rem;
  height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border: 0;
  border-radius: 0.55rem;
  color: var(--soda-mobile-primary);
  background: transparent;
  cursor: pointer;
}

.soda-mobile-header-action__dot {
  position: absolute;
  top: 0.58rem;
  right: 0.58rem;
  width: 0.5rem;
  height: 0.5rem;
  border: 2px solid var(--soda-mobile-panel);
  border-radius: 999px;
  background: #ff4c51;
}

.soda-mobile-context-actions {
  position: relative;
  order: 3;
  width: 0;
  min-width: 0;
  height: 2.75rem;
  margin-left: -0.5rem;
  overflow: hidden;
  opacity: 0;
  transform: translate3d(0.55rem, 0, 0) scale(0.94);
  transition:
    width 0.18s ease-out,
    margin-left 0.18s ease-out,
    opacity 0.18s ease-out,
    transform 0.18s ease-out;
}

.soda-mobile-context-actions.is-visible {
  width: 2.75rem;
  margin-left: 0;
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.soda-mobile-context-action {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0.25rem, 0, 0) scale(0.96);
  transition:
    opacity 0.14s ease-out,
    transform 0.14s ease-out;
}

.soda-mobile-context-action.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(0, 0, 0) scale(1);
}

.soda-mobile-refresh-action.is-refreshing .icon-base {
  animation: soda-mobile-refresh-spin 0.72s linear infinite;
}

@keyframes soda-mobile-refresh-spin {
  to {
    transform: rotate(360deg);
  }
}

.soda-mobile-theme-toggle {
  order: 2;
}

.soda-mobile-app__actions > .soda-mobile-header-action:last-child {
  justify-content: flex-end;
}

.soda-mobile-header-action .icon-base {
  --bs-icon-size: 1.55rem;
  width: 1.55rem !important;
  height: 1.55rem !important;
  inline-size: 1.55rem !important;
  block-size: 1.55rem !important;
  font-size: 1.55rem !important;
  line-height: 1 !important;
}

.soda-mobile-bottom-nav {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 120;
  min-height: calc(env(safe-area-inset-bottom) + var(--soda-mobile-bottom-bar-height));
  display: grid;
  grid-template-columns: repeat(3, 3.2rem);
  grid-template-areas: "back primary context";
  justify-content: space-between;
  align-items: end;
  padding: 0.22rem var(--soda-mobile-app-inline-padding) max(0.28rem, env(safe-area-inset-bottom));
  border-top: 1px solid var(--soda-mobile-border);
  background: var(--soda-mobile-panel-bg);
  box-shadow: 0 -0.75rem 1.7rem rgba(75, 70, 92, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.soda-mobile-bottom-nav__item {
  position: relative;
  min-width: 0;
  width: 3.2rem;
  height: 3.2rem;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 999px;
  color: var(--soda-mobile-text);
  font: inherit;
  background: var(--soda-mobile-panel-bg);
  box-shadow: var(--soda-mobile-control-shadow);
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  touch-action: manipulation;
  transition:
    background-color 0.14s ease-out,
    border-color 0.14s ease-out,
    opacity 0.14s ease-out,
    transform 0.12s ease-out;
}

.soda-mobile-bottom-nav__item::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background: var(--soda-mobile-card-press-bg);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease-out;
}

.soda-mobile-bottom-nav__item>* {
  position: relative;
  z-index: 1;
}

.soda-mobile-bottom-nav__item--back {
  grid-area: back;
}

.soda-mobile-bottom-nav__item--primary {
  grid-area: primary;
}

.soda-mobile-bottom-nav__item--refresh,
.soda-mobile-bottom-nav__item--create,
.soda-mobile-bottom-nav__more {
  grid-area: context;
}

.soda-mobile-bottom-nav__more {
  position: relative;
  width: 3.2rem;
  height: 3.2rem;
  display: grid;
  place-items: center;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.14s ease-out;
}

.soda-mobile-bottom-nav__more.is-visible {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.soda-mobile-bottom-nav__item--more {
  grid-area: auto;
}

.soda-mobile-bottom-nav__item .icon-base {
  --bs-icon-size: 1.45rem;
  width: 1.45rem !important;
  height: 1.45rem !important;
  inline-size: 1.45rem !important;
  block-size: 1.45rem !important;
  font-size: 1.45rem !important;
  line-height: 1 !important;
}

.soda-mobile-bottom-nav__item span {
  display: none;
}

.soda-mobile-bottom-nav__item:active,
.soda-mobile-bottom-nav__item.is-pressed {
  border-color: rgba(115, 103, 240, 0.32);
  transform: scale(0.988);
}

.soda-mobile-bottom-nav__item:active::before,
.soda-mobile-bottom-nav__item.is-pressed::before {
  opacity: 1;
}

.soda-mobile-bottom-nav__item:disabled {
  opacity: 0.45;
  cursor: default;
}

.soda-mobile-bottom-nav__item:not(.is-visible) {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}

.soda-mobile-bottom-more-menu {
  position: absolute;
  right: 0;
  bottom: calc(100% + 1.18rem);
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: 0.58rem;
  pointer-events: none;
}

.soda-mobile-bottom-more-menu__item {
  width: 3.2rem;
  height: 3.2rem;
  visibility: hidden;
  opacity: 0;
  transform: translate3d(0, 0.55rem, 0) scale(0.78);
  transition:
    background-color 0.14s ease-out,
    border-color 0.14s ease-out,
    opacity 0.16s ease-out,
    transform 0.18s cubic-bezier(0.18, 1.22, 0.32, 1);
  transition-delay: 0s;
}

.soda-mobile-bottom-more-menu.is-open {
  pointer-events: auto;
}

.soda-mobile-bottom-more-menu.is-open .soda-mobile-bottom-more-menu__item {
  visibility: visible;
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  transition-delay: calc(var(--soda-mobile-more-index, 0) * 38ms);
}

.soda-mobile-bottom-more-menu.is-open .soda-mobile-bottom-more-menu__item:disabled {
  opacity: 0.45;
}

.soda-mobile-bottom-more-menu__item--danger {
  color: #ff4c51;
}

.soda-mobile-app__panel {
  padding: 1.2rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  background: var(--soda-mobile-panel-bg);
  box-shadow: 0 1rem 2.4rem rgba(75, 70, 92, 0.1);
}

.soda-mobile-app__panel+.soda-mobile-app__panel {
  margin-top: 1rem;
}

.soda-mobile-app__panel--muted {
  background: var(--soda-mobile-card-bg);
}

.soda-mobile-empty-state {
  min-height: 12.8rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem 1.2rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  color: var(--soda-mobile-muted);
  text-align: center;
  background: var(--soda-mobile-panel-bg);
  box-shadow: 0 1rem 2.4rem rgba(75, 70, 92, 0.1);
}

.soda-mobile-empty-state__icon {
  margin-bottom: 0.85rem;
  color: var(--soda-mobile-muted);
  opacity: 0.6;
}

.soda-mobile-empty-state__icon .icon-base {
  --bs-icon-size: 2.75rem;
  width: 2.75rem !important;
  height: 2.75rem !important;
  inline-size: 2.75rem !important;
  block-size: 2.75rem !important;
  font-size: 2.75rem !important;
  line-height: 1 !important;
}

.soda-mobile-empty-state__svg {
  width: 2.75rem;
  height: 2.75rem;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--soda-mobile-module-icon-stroke);
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
  vector-effect: non-scaling-stroke;
}

.soda-mobile-app .soda-mobile-empty-state h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-app .soda-mobile-empty-state p {
  max-width: 17rem;
  margin: 0.4rem 0 0;
  color: var(--soda-mobile-muted);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.35;
}

.soda-mobile-app__eyebrow {
  margin: 0 0 0.35rem;
  color: var(--soda-mobile-primary);
  font-size: 0.85rem;
  font-weight: 800;
}

.soda-mobile-app h1,
.soda-mobile-app h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-app h1 {
  font-size: clamp(1.55rem, 7vw, 2rem);
}

.soda-mobile-app h2 {
  font-size: 1.18rem;
}

.soda-mobile-app p {
  margin: 0.45rem 0 0;
  color: var(--soda-mobile-muted);
  font-size: 0.98rem;
  font-weight: 600;
  line-height: 1.35;
}

.soda-mobile-app__status {
  margin-top: 1rem;
  color: var(--soda-mobile-muted);
  font-size: 0.86rem;
  font-weight: 600;
  text-align: center;
}

body.soda-mobile-pdf-open {
  overflow: hidden;
}

.soda-mobile-invoice-visualization {
  position: fixed;
  inset: 0;
  z-index: 1500;
  display: flex;
  flex-direction: column;
  color: var(--soda-mobile-text);
  background: var(--soda-mobile-panel-bg);
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition:
    opacity 0.18s ease-out,
    visibility 0s linear 0.18s;
}

.soda-mobile-invoice-visualization.is-open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition:
    opacity 0.18s ease-out,
    visibility 0s linear 0s;
}

.soda-mobile-invoice-visualization__body {
  position: relative;
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
  background: #fff;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

.soda-mobile-invoice-visualization__frame {
  width: 100%;
  height: 100%;
  background: #fff;
}

.soda-mobile-invoice-visualization__body iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  background: #fff;
}

.soda-mobile-invoice-visualization__loader {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  color: var(--soda-mobile-muted);
  background: var(--soda-mobile-panel-bg);
  font-size: 0.9rem;
  font-weight: 800;
  text-align: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.16s ease-out;
}

.soda-mobile-invoice-visualization.is-loading .soda-mobile-invoice-visualization__loader {
  opacity: 1;
}

.soda-mobile-invoice-visualization__nav {
  height: calc(env(safe-area-inset-bottom) + var(--soda-mobile-bottom-bar-height));
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(3, 3.2rem);
  justify-content: space-between;
  align-items: end;
  flex: 0 0 calc(env(safe-area-inset-bottom) + var(--soda-mobile-bottom-bar-height));
  box-sizing: border-box;
  padding: 0.22rem var(--soda-mobile-app-inline-padding) max(0.28rem, env(safe-area-inset-bottom));
  border-top: 1px solid var(--soda-mobile-border);
  background: var(--soda-mobile-panel-bg);
  box-shadow: 0 -0.75rem 1.7rem rgba(75, 70, 92, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.soda-mobile-invoice-visualization__button:disabled {
  opacity: 0.38;
  pointer-events: none;
}

.soda-mobile-confirm-dialog {
  position: fixed;
  inset: 0;
  z-index: 1800;
  display: grid;
  place-items: center;
  padding:
    calc(env(safe-area-inset-top) + 1rem)
    1rem
    calc(env(safe-area-inset-bottom) + 1rem);
  opacity: 0;
  pointer-events: none;
  touch-action: none;
  transition: opacity 0.12s ease-out;
}

.soda-mobile-confirm-dialog.is-open {
  opacity: 1;
  pointer-events: auto;
}

.soda-mobile-confirm-dialog__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(30, 28, 40, 0.42);
}

.soda-mobile-confirm-dialog__panel {
  position: relative;
  width: min(100%, 22rem);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.68);
  border-radius: 1.08rem;
  color: var(--soda-mobile-text);
  background: var(--soda-mobile-panel);
  box-shadow: 0 1.25rem 3rem rgba(30, 28, 40, 0.28);
  transform: translate3d(0, 0, 0) scale(1.045);
  opacity: 0;
  transition:
    opacity 0.1s ease-out,
    transform 0.24s cubic-bezier(0.2, 0.9, 0.24, 1);
}

.soda-mobile-confirm-dialog.is-open .soda-mobile-confirm-dialog__panel {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.soda-mobile-confirm-dialog__content {
  display: grid;
  gap: 0.62rem;
  padding: 1.45rem 1.35rem 1rem;
  text-align: left;
}

.soda-mobile-confirm-dialog__icon {
  display: none;
}

.soda-mobile-confirm-dialog__content h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1.22rem;
  font-weight: 800;
  line-height: 1.25;
}

.soda-mobile-confirm-dialog__content p {
  margin: 0;
  color: var(--soda-mobile-muted);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.42;
}

.soda-mobile-confirm-dialog__actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.55rem;
  padding: 0 1.15rem 1.15rem;
}

.soda-mobile-confirm-dialog__button {
  min-height: 3.05rem;
  padding: 0.78rem 1rem;
  border: 0;
  border-radius: 0.68rem;
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-soft-button-bg);
  font: inherit;
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.1;
  appearance: none;
  -webkit-appearance: none;
}

.soda-mobile-confirm-dialog__button--cancel {
  color: var(--soda-mobile-text);
  order: 2;
}

.soda-mobile-confirm-dialog__button--confirm {
  order: 1;
}

.soda-mobile-confirm-dialog__button--confirm[data-mobile-confirm-variant="danger"] {
  color: #ea5455;
}

.soda-mobile-confirm-dialog__button:active {
  background: var(--soda-mobile-card-press-bg);
}

.soda-mobile-confirm-dialog__button[hidden] {
  display: none;
}

.soda-mobile-confirm-dialog.is-busy .soda-mobile-confirm-dialog__button {
  opacity: 0.68;
}

.soda-mobile-data-dialog {
  position: fixed;
  inset: 0;
  z-index: 1900;
  width: 100%;
  height: var(--soda-mobile-viewport-height, 100svh);
  max-height: var(--soda-mobile-viewport-height, 100svh);
  display: grid;
  place-items: start center;
  padding: 0 0 max(0.75rem, env(safe-area-inset-bottom));
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  touch-action: pan-y;
  transition: opacity 0.24s ease-out;
}

.soda-mobile-data-dialog.is-open {
  opacity: 1;
  pointer-events: auto;
}

.soda-mobile-data-dialog__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(30, 28, 40, 0.46);
}

.soda-mobile-data-dialog__panel {
  position: relative;
  width: min(100%, 38rem);
  max-width: 100%;
  max-height: calc(var(--soda-mobile-viewport-height, 100svh) - max(0.75rem, env(safe-area-inset-bottom)));
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  border-radius: 0 0 0.75rem 0.75rem;
  color: var(--soda-mobile-text);
  background: var(--soda-mobile-panel);
  box-shadow: 0 1.1rem 3rem rgba(30, 28, 40, 0.28);
  transform: translate3d(0, -105%, 0);
  transition: transform 0.46s cubic-bezier(0.18, 0.88, 0.28, 1);
}

.soda-mobile-data-dialog.is-open .soda-mobile-data-dialog__panel {
  transform: translate3d(0, 0, 0);
}

.soda-mobile-data-dialog__accent {
  height: 0.26rem;
  background: var(--soda-mobile-primary);
}

.soda-mobile-data-dialog__header {
  min-height: 4.35rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.85rem;
  align-items: start;
  padding: 1.15rem 1.15rem 0.95rem;
  border-bottom: 1px solid var(--soda-mobile-border);
}

.soda-mobile-data-dialog__header p {
  margin: 0 0 0.22rem;
  color: var(--soda-mobile-primary);
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.15;
}

.soda-mobile-data-dialog__header h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.18;
}

.soda-mobile-data-dialog__close {
  width: 2.6rem;
  height: 2.6rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0.55rem;
  color: var(--soda-mobile-primary);
  background: transparent;
}

.soda-mobile-data-dialog__close .icon-base {
  --bs-icon-size: 1.35rem;
  font-size: 1.35rem !important;
}

.soda-mobile-data-dialog__body {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 1.15rem;
  -webkit-overflow-scrolling: touch;
}

.soda-mobile-data-dialog__actions {
  display: grid;
  gap: 0.65rem;
  padding: 0.95rem 1.15rem max(1rem, env(safe-area-inset-bottom));
  border-top: 1px solid var(--soda-mobile-border);
  background: var(--soda-mobile-panel);
}

.soda-mobile-data-dialog__button {
  min-height: 2.75rem;
  border-radius: 0.55rem;
  font-size: 0.9rem;
  font-weight: 800;
}

.soda-mobile-data-dialog.is-busy .soda-mobile-data-dialog__button,
.soda-mobile-data-dialog.is-busy .soda-mobile-data-dialog__close {
  opacity: 0.68;
}

.soda-mobile-data-form {
  display: grid;
  gap: 1rem;
}

.soda-mobile-data-field .form-label {
  margin-bottom: 0.45rem;
  color: var(--soda-mobile-text);
  font-size: 0.9rem;
  font-weight: 800;
}

.soda-mobile-data-input,
.soda-mobile-data-select,
.soda-mobile-data-textarea {
  border-color: var(--soda-mobile-border);
  border-radius: 0.55rem;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 650;
  background-color: var(--soda-mobile-panel);
}

.soda-mobile-data-input,
.soda-mobile-data-select {
  min-height: 3rem;
}

.soda-mobile-data-select--users {
  min-height: 8.8rem;
  padding: 0.45rem;
}

.soda-mobile-data-select--users option {
  padding: 0.55rem 0.45rem;
  border-radius: 0.4rem;
  color: var(--soda-mobile-text);
  font-weight: 750;
}

.soda-mobile-data-textarea {
  min-height: 9.25rem;
  resize: none;
}

.soda-mobile-data-input:focus,
.soda-mobile-data-select:focus,
.soda-mobile-data-textarea:focus {
  border-color: var(--soda-mobile-primary);
  box-shadow: 0 0 0 0.22rem rgba(115, 103, 240, 0.14);
}

.soda-mobile-data-field .invalid-feedback {
  margin-top: 0.4rem;
  font-size: 0.78rem;
  font-weight: 700;
}

.soda-mobile-recipient-picker {
  position: relative;
}

.soda-mobile-recipient-picker__field {
  min-height: 3.15rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.38rem;
  align-items: center;
  padding: 0.38rem 0.48rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.6rem;
  background: var(--soda-mobile-panel);
  transition:
    border-color 0.14s ease-out,
    box-shadow 0.14s ease-out;
}

.soda-mobile-recipient-picker__field:focus-within {
  border-color: var(--soda-mobile-primary);
  box-shadow: 0 0 0 0.22rem rgba(115, 103, 240, 0.14);
}

.soda-mobile-recipient-picker__field.is-invalid {
  border-color: #ea5455;
}

.soda-mobile-recipient-picker__chips {
  display: contents;
}

.soda-mobile-recipient-picker__input {
  min-width: 7rem;
  flex: 1 1 7rem;
  height: 2rem;
  border: 0;
  outline: 0;
  color: var(--soda-mobile-text);
  background: transparent;
  font-size: 1rem;
  font-weight: 700;
  line-height: 2rem;
}

.soda-mobile-recipient-picker__input::placeholder {
  color: var(--soda-mobile-muted);
  opacity: 0.85;
}

.soda-mobile-recipient-chip {
  max-width: 100%;
  min-height: 2rem;
  display: inline-flex;
  align-items: center;
  gap: 0.34rem;
  padding: 0.16rem 0.32rem 0.16rem 0.18rem;
  border-radius: 999px;
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1;
}

.soda-mobile-recipient-chip__avatar {
  width: 1.58rem;
  height: 1.58rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border-radius: 999px;
  color: #fff;
  background: var(--soda-mobile-primary);
  font-size: 0.65rem;
  font-weight: 900;
}

.soda-mobile-recipient-chip__name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-recipient-chip__remove {
  width: 1.35rem;
  height: 1.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border: 0;
  border-radius: 999px;
  color: var(--soda-mobile-primary);
  background: transparent;
}

.soda-mobile-recipient-chip__remove .icon-base {
  --bs-icon-size: 0.9rem;
  font-size: 0.9rem !important;
}

.soda-mobile-recipient-picker__results {
  margin-top: 0.5rem;
  max-height: min(13rem, calc(var(--soda-mobile-viewport-height, 100svh) * 0.34));
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.7rem;
  background: var(--soda-mobile-panel);
  box-shadow: 0 0.85rem 2rem rgba(30, 28, 40, 0.16);
  -webkit-overflow-scrolling: touch;
}

.soda-mobile-recipient-result {
  width: 100%;
  min-height: 3.5rem;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.78rem;
  align-items: center;
  padding: 0.55rem 0.7rem;
  border: 0;
  border-bottom: 1px solid var(--soda-mobile-border);
  color: var(--soda-mobile-text);
  text-align: left;
  background: transparent;
}

.soda-mobile-recipient-result:last-child {
  border-bottom: 0;
}

.soda-mobile-recipient-result:active,
.soda-mobile-recipient-result:focus {
  background: var(--soda-mobile-primary-soft);
}

.soda-mobile-recipient-result__avatar {
  width: 2.3rem;
  height: 2.3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #fff;
  background: color-mix(in srgb, var(--soda-mobile-primary) 74%, #8ec5ff 26%);
  font-size: 0.82rem;
  font-weight: 900;
}

.soda-mobile-recipient-result__name {
  min-width: 0;
  overflow: hidden;
  font-size: 0.98rem;
  font-weight: 850;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-recipient-picker__empty {
  padding: 0.9rem 0.75rem;
  color: var(--soda-mobile-muted);
  font-size: 0.86rem;
  font-weight: 750;
  text-align: center;
}

.soda-mobile-data-dialog__status {
  min-height: 1.1rem;
  margin: -0.2rem 0 0;
  color: var(--soda-mobile-muted);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.25;
}

.soda-mobile-data-dialog__status.is-error {
  color: #ea5455;
}

.soda-mobile-data-dialog__status.is-success {
  color: var(--soda-mobile-primary);
}

.soda-mobile-spinner-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3rem;
  min-height: 3rem;
  line-height: 1;
}

.soda-mobile-spinner {
  --bs-spinner-border-width: 0.32em;
  --bs-spinner-height: 2.65rem;
  --bs-spinner-width: 2.65rem;
  color: var(--soda-mobile-primary) !important;
}

.soda-mobile-settings-status.is-loading,
.soda-mobile-login__status.is-loading,
.soda-mobile-app__status.is-loading {
  min-height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.soda-mobile-user-header {
  min-height: 4.15rem;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.8rem;
  align-items: center;
  padding: 0.65rem 0 0.5rem;
}

.soda-mobile-user-avatar {
  position: relative;
  width: 3rem;
  height: 3rem;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 999px;
  background: var(--soda-mobile-card-bg);
  box-shadow: var(--soda-mobile-control-shadow);
  overflow: hidden;
}

.soda-mobile-user-avatar::after {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 0 1px var(--soda-mobile-avatar-inner-border);
  border-radius: inherit;
  pointer-events: none;
}

.soda-mobile-user-avatar__img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: inherit;
}

.soda-mobile-user-header__content {
  min-width: 0;
}

.soda-mobile-user-header__hello {
  margin: 0 0 0.18rem !important;
  color: var(--soda-mobile-muted) !important;
  font-size: 0.9rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.soda-mobile-user-header h1 {
  margin: 0;
  min-width: 0;
  font-size: clamp(1.4rem, 6vw, 1.15rem);
  font-weight: 800;
  line-height: 1.12;
}

.soda-mobile-view-stack {
  position: relative;
  min-height: calc(var(--soda-mobile-viewport-height, 100svh) - var(--soda-mobile-shell-top) - var(--soda-mobile-shell-bottom));
  max-width: 100%;
  max-inline-size: 100%;
  overflow: visible;
}

.soda-mobile-view {
  display: none;
  width: calc(100% + var(--soda-mobile-app-inline-padding) + var(--soda-mobile-app-inline-padding));
  min-height: calc(var(--soda-mobile-viewport-height, 100svh) - var(--soda-mobile-shell-top) - var(--soda-mobile-shell-bottom));
  box-sizing: border-box;
  margin-right: calc(-1 * var(--soda-mobile-app-inline-padding));
  margin-left: calc(-1 * var(--soda-mobile-app-inline-padding));
  padding-right: var(--soda-mobile-app-inline-padding);
  padding-left: var(--soda-mobile-app-inline-padding);
  overflow: visible;
  overscroll-behavior-x: contain;
  touch-action: pan-y;
}

.soda-mobile-view.is-active {
  display: block;
}

.soda-mobile-view.is-transitioning {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  min-height: 100%;
  overflow: visible;
  z-index: 90;
  display: block;
}

.soda-mobile-view.is-entering-top,
.soda-mobile-view.is-leaving-top {
  overflow: hidden;
}

.soda-mobile-view.is-entering-top {
  z-index: 95;
}

.soda-mobile-view.is-leaving-top {
  z-index: 96;
}

.soda-mobile-view.is-entering-under {
  z-index: 89;
  pointer-events: none;
}

.soda-mobile-view.is-under-top {
  z-index: 89;
  pointer-events: none;
}

.soda-mobile-view.is-transitioning,
.soda-mobile-view.is-transitioning *,
.soda-mobile-view.is-transitioning *::before,
.soda-mobile-view.is-transitioning *::after {
  box-shadow: none !important;
  filter: none !important;
}

body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-app *,
body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-app *::before,
body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-app *::after,
body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-invoice-visualization,
body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-invoice-visualization *,
body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-invoice-visualization *::before,
body[data-soda-mobile-page="app"][data-soda-mobile-shadows="off"] .soda-mobile-invoice-visualization *::after {
  box-shadow: none !important;
  filter: none !important;
}

.soda-mobile-view.is-leaving-forward,
.soda-mobile-view.is-leaving-back {
  z-index: 89;
}

.soda-mobile-view--terminal {
  min-height: calc(var(--soda-mobile-viewport-height, 100svh) - var(--soda-mobile-shell-top) - var(--soda-mobile-shell-bottom));
}

@keyframes soda-mobile-content-leave {
  0% {
    visibility: visible;
    opacity: 1;
  }

  85% {
    visibility: visible;
    opacity: 0;
  }

  100% {
    visibility: hidden;
    opacity: 0;
  }
}

.soda-mobile-view>.soda-mobile-user-header,
.soda-mobile-view>.soda-mobile-screen-header {
  position: fixed;
  top: calc(env(safe-area-inset-top) + var(--soda-mobile-top-bar-height));
  right: 0;
  left: 0;
  z-index: 82;
  min-height: var(--soda-mobile-view-bar-height);
  opacity: 1;
  margin: 0;
  background: transparent;
  transform: translate3d(0, 0, 0);
  transition: none;
  will-change: auto;
}

.soda-mobile-view.is-transitioning>.soda-mobile-user-header,
.soda-mobile-view.is-transitioning>.soda-mobile-screen-header {
  z-index: 83;
  transition: transform var(--soda-mobile-slide-duration) var(--soda-mobile-slide-easing);
}

.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-user-header,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-screen-header {
  z-index: 97;
  opacity: 1;
  background-color: var(--soda-mobile-bg);
  background-image:
    var(--soda-mobile-app-overlay),
    var(--soda-mobile-app-bg-image);
  background-position:
    center top,
    var(--soda-mobile-app-bg-position-image);
  background-size:
    100% var(--soda-mobile-viewport-height, 100svh),
    var(--soda-mobile-app-bg-size-image);
  background-repeat: no-repeat;
  background-attachment: fixed;
  transition: none;
}

.soda-mobile-view>.soda-mobile-user-header {
  padding: 0.62rem var(--soda-mobile-app-inline-padding) 0.58rem;
}

.soda-mobile-view>.soda-mobile-screen-header {
  padding: 0.58rem calc(var(--soda-mobile-app-inline-padding) + 0.15rem) 0.58rem;
}

.soda-mobile-view>.soda-mobile-user-header::before,
.soda-mobile-view>.soda-mobile-screen-header::before {
  display: none;
}

body[data-soda-mobile-sticky-bg="flat"] .soda-mobile-view>.soda-mobile-user-header,
body[data-soda-mobile-sticky-bg="flat"] .soda-mobile-view>.soda-mobile-screen-header {
  background: var(--soda-mobile-sticky-header-bg);
}

body[data-soda-mobile-sticky-bg="flat"] .soda-mobile-view>.soda-mobile-user-header::before,
body[data-soda-mobile-sticky-bg="flat"] .soda-mobile-view>.soda-mobile-screen-header::before {
  background: var(--soda-mobile-sticky-header-bg);
}

body[data-soda-mobile-sticky-mask="off"] .soda-mobile-view>.soda-mobile-user-header,
body[data-soda-mobile-sticky-mask="off"] .soda-mobile-view>.soda-mobile-screen-header {
  top: calc(env(safe-area-inset-top) + var(--soda-mobile-top-bar-height));
}

body[data-soda-mobile-sticky-mask="off"] .soda-mobile-view>.soda-mobile-user-header::before,
body[data-soda-mobile-sticky-mask="off"] .soda-mobile-view>.soda-mobile-screen-header::before {
  display: none;
}

body[data-soda-mobile-sticky-mask="off"] .soda-mobile-user-avatar {
  box-shadow: 0 0.7rem 1.6rem rgba(75, 70, 92, 0.08);
}

.soda-mobile-user-header__hello,
.soda-mobile-screen-title p {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: none;
  will-change: auto;
}

.soda-mobile-user-header h1,
.soda-mobile-screen-title h1 {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: none;
  will-change: auto;
}

.soda-mobile-view.is-leaving-forward>.soda-mobile-user-header,
.soda-mobile-view.is-leaving-forward>.soda-mobile-screen-header,
.soda-mobile-view.is-leaving-back>.soda-mobile-user-header,
.soda-mobile-view.is-leaving-back>.soda-mobile-screen-header {
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
}

.soda-mobile-view.is-leaving-top>.soda-mobile-user-header,
.soda-mobile-view.is-leaving-top>.soda-mobile-screen-header {
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  transition: opacity 0.14s ease-out;
}

.soda-mobile-view[data-mobile-view="notifications"].is-leaving-top>.soda-mobile-user-header,
.soda-mobile-view[data-mobile-view="notifications"].is-leaving-top>.soda-mobile-screen-header {
  opacity: 1;
  transition: none;
}

.soda-mobile-view.is-entering-forward>.soda-mobile-user-header,
.soda-mobile-view.is-entering-forward>.soda-mobile-screen-header,
.soda-mobile-view.is-entering-back>.soda-mobile-user-header,
.soda-mobile-view.is-entering-back>.soda-mobile-screen-header {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.soda-mobile-view.is-entering-top>.soda-mobile-user-header,
.soda-mobile-view.is-entering-top>.soda-mobile-screen-header {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.soda-mobile-view[data-mobile-view="notifications"].is-entering-top>.soda-mobile-user-header,
.soda-mobile-view[data-mobile-view="notifications"].is-entering-top>.soda-mobile-screen-header {
  opacity: 1;
}

.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-user-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-screen-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-user-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-screen-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view[data-mobile-view="notifications"].is-entering-top>.soda-mobile-user-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view[data-mobile-view="notifications"].is-entering-top>.soda-mobile-screen-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view[data-mobile-view="notifications"].is-leaving-top>.soda-mobile-user-header,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view[data-mobile-view="notifications"].is-leaving-top>.soda-mobile-screen-header {
  opacity: 0;
  transition: opacity 0.34s ease-out;
}

.soda-mobile-view.is-entering-forward>.soda-mobile-user-header,
.soda-mobile-view.is-entering-forward>.soda-mobile-screen-header,
.soda-mobile-view.is-entering-back>.soda-mobile-user-header,
.soda-mobile-view.is-entering-back>.soda-mobile-screen-header,
.soda-mobile-view.is-entering-top>.soda-mobile-user-header,
.soda-mobile-view.is-entering-top>.soda-mobile-screen-header {
  z-index: 84;
}

.soda-mobile-view.is-entering-top>.soda-mobile-user-header,
.soda-mobile-view.is-entering-top>.soda-mobile-screen-header {
  z-index: 96;
  background-color: var(--soda-mobile-bg);
  background-image:
    var(--soda-mobile-app-overlay),
    var(--soda-mobile-app-bg-image);
  background-position:
    center top,
    var(--soda-mobile-app-bg-position-image);
  background-size:
    100% var(--soda-mobile-viewport-height, 100svh),
    var(--soda-mobile-app-bg-size-image);
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.soda-mobile-view.is-entering-forward .soda-mobile-user-header__hello,
.soda-mobile-view.is-entering-forward .soda-mobile-screen-title p,
.soda-mobile-view.is-entering-forward .soda-mobile-user-header h1,
.soda-mobile-view.is-entering-forward .soda-mobile-screen-title h1,
.soda-mobile-view.is-entering-back .soda-mobile-user-header__hello,
.soda-mobile-view.is-entering-back .soda-mobile-screen-title p,
.soda-mobile-view.is-entering-back .soda-mobile-user-header h1,
.soda-mobile-view.is-entering-back .soda-mobile-screen-title h1,
.soda-mobile-view.is-leaving-forward .soda-mobile-user-header__hello,
.soda-mobile-view.is-leaving-forward .soda-mobile-screen-title p,
.soda-mobile-view.is-leaving-forward .soda-mobile-user-header h1,
.soda-mobile-view.is-leaving-forward .soda-mobile-screen-title h1,
.soda-mobile-view.is-leaving-back .soda-mobile-user-header__hello,
.soda-mobile-view.is-leaving-back .soda-mobile-screen-title p,
.soda-mobile-view.is-leaving-back .soda-mobile-user-header h1,
.soda-mobile-view.is-leaving-back .soda-mobile-screen-title h1 {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: none;
  transition-delay: 0s;
}

.soda-mobile-view>.soda-mobile-module-list,
.soda-mobile-view>.soda-mobile-empty-state,
.soda-mobile-view>.soda-mobile-settings-panel,
.soda-mobile-view>.soda-mobile-data-list-panel,
.soda-mobile-view>.soda-mobile-mail-detail__actions,
.soda-mobile-view>.soda-mobile-ksef-stats-panel,
.soda-mobile-view>.soda-mobile-task-report,
.soda-mobile-view>.soda-mobile-terminal-panel,
.soda-mobile-view>.soda-mobile-application-actions,
.soda-mobile-view>.soda-mobile-settings-status {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    transform var(--soda-mobile-slide-duration) var(--soda-mobile-slide-easing),
    opacity var(--soda-mobile-leave-fade-duration) ease-out;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform-style: preserve-3d;
  will-change: transform, opacity;
}

.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-module-list,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-empty-state,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-settings-panel,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-data-list-panel,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-mail-detail__actions,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-ksef-stats-panel,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-task-report,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-terminal-panel,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-application-actions,
.soda-mobile-view[data-mobile-view="notifications"].is-transitioning>.soda-mobile-settings-status {
  transition:
    transform 0.34s ease-out,
    opacity 0.34s ease-out;
}

.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-module-list,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-empty-state,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-settings-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-data-list-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-mail-detail__actions,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-ksef-stats-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-task-report,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-terminal-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-application-actions,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-under-top>.soda-mobile-settings-status,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-module-list,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-empty-state,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-settings-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-data-list-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-mail-detail__actions,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-ksef-stats-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-task-report,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-terminal-panel,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-application-actions,
.soda-mobile-view-stack[data-mobile-top-transition="sequential"] .soda-mobile-view.is-entering-under>.soda-mobile-settings-status {
  opacity: 0;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.34s ease-out,
    opacity 0.34s ease-out;
}

.soda-mobile-view.is-entering-forward>.soda-mobile-module-list,
.soda-mobile-view.is-entering-forward>.soda-mobile-empty-state,
.soda-mobile-view.is-entering-forward>.soda-mobile-settings-panel,
.soda-mobile-view.is-entering-forward>.soda-mobile-data-list-panel,
.soda-mobile-view.is-entering-forward>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-entering-forward>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-entering-forward>.soda-mobile-task-report,
.soda-mobile-view.is-entering-forward>.soda-mobile-terminal-panel,
.soda-mobile-view.is-entering-forward>.soda-mobile-application-actions,
.soda-mobile-view.is-entering-forward>.soda-mobile-settings-status {
  transform: translate3d(100%, 0, 0);
}

.soda-mobile-view.is-entering-back>.soda-mobile-module-list,
.soda-mobile-view.is-entering-back>.soda-mobile-empty-state,
.soda-mobile-view.is-entering-back>.soda-mobile-settings-panel,
.soda-mobile-view.is-entering-back>.soda-mobile-data-list-panel,
.soda-mobile-view.is-entering-back>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-entering-back>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-entering-back>.soda-mobile-task-report,
.soda-mobile-view.is-entering-back>.soda-mobile-terminal-panel,
.soda-mobile-view.is-entering-back>.soda-mobile-application-actions,
.soda-mobile-view.is-entering-back>.soda-mobile-settings-status {
  transform: translate3d(-100%, 0, 0);
}

.soda-mobile-view.is-entering-top>.soda-mobile-module-list,
.soda-mobile-view.is-entering-top>.soda-mobile-empty-state,
.soda-mobile-view.is-entering-top>.soda-mobile-settings-panel,
.soda-mobile-view.is-entering-top>.soda-mobile-data-list-panel,
.soda-mobile-view.is-entering-top>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-entering-top>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-entering-top>.soda-mobile-task-report,
.soda-mobile-view.is-entering-top>.soda-mobile-terminal-panel,
.soda-mobile-view.is-entering-top>.soda-mobile-application-actions,
.soda-mobile-view.is-entering-top>.soda-mobile-settings-status {
  opacity: 0;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.34s ease-out,
    opacity 0.34s ease-out;
}

.soda-mobile-view.is-leaving-forward>.soda-mobile-module-list,
.soda-mobile-view.is-leaving-forward>.soda-mobile-empty-state,
.soda-mobile-view.is-leaving-forward>.soda-mobile-settings-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-data-list-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-leaving-forward>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-task-report,
.soda-mobile-view.is-leaving-forward>.soda-mobile-terminal-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-application-actions,
.soda-mobile-view.is-leaving-forward>.soda-mobile-settings-status {
  opacity: 0;
  transform: translate3d(0, 0, 0);
  pointer-events: none;
  animation: soda-mobile-content-leave var(--soda-mobile-leave-fade-duration) ease-out forwards;
}

.soda-mobile-view.is-leaving-back>.soda-mobile-module-list,
.soda-mobile-view.is-leaving-back>.soda-mobile-empty-state,
.soda-mobile-view.is-leaving-back>.soda-mobile-settings-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-data-list-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-leaving-back>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-task-report,
.soda-mobile-view.is-leaving-back>.soda-mobile-terminal-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-application-actions,
.soda-mobile-view.is-leaving-back>.soda-mobile-settings-status {
  opacity: 0;
  transform: translate3d(0, 0, 0);
  pointer-events: none;
  animation: soda-mobile-content-leave var(--soda-mobile-leave-fade-duration) ease-out forwards;
}

.soda-mobile-view.is-leaving-top>.soda-mobile-module-list,
.soda-mobile-view.is-leaving-top>.soda-mobile-empty-state,
.soda-mobile-view.is-leaving-top>.soda-mobile-settings-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-data-list-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-leaving-top>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-task-report,
.soda-mobile-view.is-leaving-top>.soda-mobile-terminal-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-application-actions,
.soda-mobile-view.is-leaving-top>.soda-mobile-settings-status {
  opacity: 0;
  transform: translate3d(0, 0, 0);
  pointer-events: none;
  transition:
    transform 0.34s ease-out,
    opacity 0.34s ease-out;
}

.soda-mobile-view[data-mobile-view="notifications"].is-leaving-top>.soda-mobile-data-list-panel {
  background: var(--soda-mobile-panel);
}

.soda-mobile-view.is-leaving-forward>.soda-mobile-module-list .soda-mobile-module-card,
.soda-mobile-view.is-leaving-back>.soda-mobile-module-list .soda-mobile-module-card,
.soda-mobile-view.is-leaving-top>.soda-mobile-module-list .soda-mobile-module-card,
.soda-mobile-view.is-leaving-forward>.soda-mobile-empty-state,
.soda-mobile-view.is-leaving-back>.soda-mobile-empty-state,
.soda-mobile-view.is-leaving-top>.soda-mobile-empty-state,
.soda-mobile-view.is-leaving-forward>.soda-mobile-settings-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-settings-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-settings-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-data-list-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-data-list-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-data-list-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-leaving-forward>.soda-mobile-task-report,
.soda-mobile-view.is-leaving-back>.soda-mobile-task-report,
.soda-mobile-view.is-leaving-top>.soda-mobile-task-report,
.soda-mobile-view.is-leaving-forward>.soda-mobile-terminal-panel,
.soda-mobile-view.is-leaving-back>.soda-mobile-terminal-panel,
.soda-mobile-view.is-leaving-top>.soda-mobile-terminal-panel {
  box-shadow: none;
}

.soda-mobile-view.is-content-hidden>.soda-mobile-module-list,
.soda-mobile-view.is-content-hidden>.soda-mobile-empty-state,
.soda-mobile-view.is-content-hidden>.soda-mobile-settings-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-data-list-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-mail-detail__actions,
.soda-mobile-view.is-content-hidden>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-task-report,
.soda-mobile-view.is-content-hidden>.soda-mobile-terminal-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-application-actions,
.soda-mobile-view.is-content-hidden>.soda-mobile-settings-status {
  visibility: hidden;
  opacity: 0;
  animation: none;
}

.soda-mobile-view.is-content-hidden>.soda-mobile-module-list .soda-mobile-module-card,
.soda-mobile-view.is-content-hidden>.soda-mobile-empty-state,
.soda-mobile-view.is-content-hidden>.soda-mobile-settings-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-data-list-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-ksef-stats-panel,
.soda-mobile-view.is-content-hidden>.soda-mobile-task-report,
.soda-mobile-view.is-content-hidden>.soda-mobile-terminal-panel {
  box-shadow: none;
}

.soda-mobile-view.is-leaving-forward>.soda-mobile-module-list .soda-mobile-module-card::after,
.soda-mobile-view.is-leaving-back>.soda-mobile-module-list .soda-mobile-module-card::after,
.soda-mobile-view.is-leaving-top>.soda-mobile-module-list .soda-mobile-module-card::after,
.soda-mobile-view.is-content-hidden>.soda-mobile-module-list .soda-mobile-module-card::after {
  opacity: 0;
}

.soda-mobile-view.is-transitioning>.soda-mobile-task-report {
  background: transparent;
}

.soda-mobile-module-list {
  display: grid;
  gap: 0.9rem;
  margin-top: 1rem;
  isolation: isolate;
}

.soda-mobile-module-list--compact {
  margin-top: 0.9rem;
}

.soda-mobile-screen-header+.soda-mobile-module-list,
.soda-mobile-screen-header+.soda-mobile-empty-state,
.soda-mobile-screen-header+.soda-mobile-settings-panel,
.soda-mobile-screen-header+.soda-mobile-data-list-panel,
.soda-mobile-screen-header+.soda-mobile-ksef-stats-panel,
.soda-mobile-screen-header+.soda-mobile-task-report,
.soda-mobile-screen-header+.soda-mobile-application-actions,
.soda-mobile-screen-header+.soda-mobile-mail-detail__actions,
.soda-mobile-screen-header+.soda-mobile-mail-detail__actions:empty+.soda-mobile-mail-detail {
  margin-top: 1rem;
}

.soda-mobile-module-card {
  position: relative;
  width: 100%;
  min-height: 5.9rem;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: start;
  padding: 1rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  color: var(--soda-mobile-text);
  text-align: left;
  background: var(--soda-mobile-card-bg);
  box-shadow:
    0 0.18rem 0.45rem rgba(75, 70, 92, 0.045),
    0 0.42rem 0.9rem var(--soda-mobile-card-shadow);
  transition:
    transform 0.12s ease-out,
    border-color 0.12s ease-out,
    background-color 0.12s ease-out;
  z-index: 0;
}

.soda-mobile-module-card::before,
.soda-mobile-module-card::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.soda-mobile-module-card::before {
  inset: 0;
  border-radius: inherit;
  background: var(--soda-mobile-card-press-bg);
  opacity: 0;
  transition: opacity 0.12s ease-out;
  z-index: 0;
}

.soda-mobile-module-card::after {
  display: none;
}

.soda-mobile-module-card>* {
  position: relative;
  z-index: 1;
}

.soda-mobile-module-card:active,
.soda-mobile-module-card.is-pressed {
  transform: scale(0.988);
  border-color: rgba(115, 103, 240, 0.32);
}

.soda-mobile-module-card:active::before,
.soda-mobile-module-card.is-pressed::before {
  opacity: 1;
}

.soda-mobile-module-card.is-pressed .soda-mobile-module-card__chevron {
  transform: translate3d(0.1rem, 0, 0);
}

.soda-mobile-module-card__icon {
  width: 2.3rem;
  min-height: 2.3rem;
  display: grid;
  gap: 0.22rem;
  align-items: flex-start;
  justify-items: center;
  justify-content: center;
  flex: 0 0 auto;
  color: var(--soda-mobile-primary);
}

.soda-mobile-module-card__icon .icon-base {
  --bs-icon-size: 2.3rem;
  width: 2.3rem !important;
  height: 2.3rem !important;
  inline-size: 2.3rem !important;
  block-size: 2.3rem !important;
  font-size: 2.3rem !important;
  line-height: 1 !important;
}

.soda-mobile-module-card__svg {
  width: 2.3rem;
  height: 2.3rem;
  aspect-ratio: 1 / 1;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--soda-mobile-module-icon-stroke);
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
  vector-effect: non-scaling-stroke;
}

.soda-mobile-module-card__body {
  min-width: 0;
  display: grid;
  gap: 0.28rem;
}

.soda-mobile-module-card__title-row {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.soda-mobile-module-card__title {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--soda-mobile-text);
  font-size: 1.06rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-module-card__badge {
  width: 1.4rem;
  min-width: 1.4rem;
  height: 1.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  padding: 0;
  border-radius: 999px;
  color: #fff;
  background: var(--soda-mobile-primary);
  font-size: 0.6rem;
  font-weight: 800;
  line-height: 1;
}

.soda-mobile-module-card__text {
  min-width: 0;
  color: var(--soda-mobile-muted);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.soda-mobile-module-card__post-message {
  max-width: 100%;
  display: inline;
  color: var(--bs-success, #28c76f);
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1.28;
  white-space: normal;
}

.soda-mobile-module-card__post-message--success {
  color: var(--bs-success, #28c76f);
}

.soda-mobile-module-card__post-message--danger {
  color: var(--bs-danger, #ea5455);
}

.soda-mobile-module-card__chevron {
  color: var(--soda-mobile-muted);
  font-size: 1.2rem;
  line-height: 1;
  transition: transform 0.12s ease-out;
}

.soda-mobile-module-card__meta {
  width: 1.4rem;
  display: grid;
  gap: 1.12rem;
  align-self: start;
  justify-items: center;
}

.soda-mobile-screen-header {
  position: relative;
  min-height: 4.15rem;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  padding: 0.65rem 0.15rem 0.5rem;
  margin-bottom: 1rem;
}

.soda-mobile-screen-title {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}

.soda-mobile-screen-title>div {
  min-width: 0;
}

.soda-mobile-screen-title p {
  margin: 0 0 0.18rem;
  color: var(--soda-mobile-muted);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.15;
}

.soda-mobile-screen-title h1 {
  min-width: 0;
  margin: 0;
  font-size: 1.45rem;
  overflow-wrap: anywhere;
}

.soda-mobile-screen-title h1[data-mobile-mail-detail-title] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-view[data-mobile-view="mail-detail"] {
  --soda-mobile-mail-detail-inline-safe: clamp(0.35rem, 2.5vw, 0.65rem);
}

.soda-mobile-screen-title__suffix {
  color: var(--soda-mobile-muted);
  font-size: 0.68em;
  font-weight: 800;
  white-space: nowrap;
}

.soda-mobile-action-list {
  display: grid;
  gap: 0.75rem;
  margin-top: 1rem;
}

.soda-mobile-action-row {
  width: 100%;
  min-height: 4.25rem;
  display: grid;
  gap: 0.25rem;
  align-content: center;
  padding: 0.9rem 1rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.7rem;
  color: var(--soda-mobile-text);
  text-align: left;
  background: var(--soda-mobile-card-bg);
}

.soda-mobile-action-row span {
  color: var(--soda-mobile-muted);
  font-size: 0.82rem;
  font-weight: 700;
}

.soda-mobile-action-row strong {
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.25;
}

.soda-mobile-settings-panel {
  padding: 1rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  background: var(--soda-mobile-panel-bg);
  box-shadow: 0 1rem 2.4rem rgba(75, 70, 92, 0.1);
}

.soda-mobile-settings-panel+.soda-mobile-settings-panel {
  margin-top: 0.9rem;
}

.soda-mobile-settings-panel__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.8rem;
  align-items: start;
  margin-bottom: 1rem;
}

.soda-mobile-settings-panel__head--text {
  grid-template-columns: minmax(0, 1fr);
}

.soda-mobile-settings-panel__icon {
  width: 2.25rem;
  height: 2.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  color: var(--soda-mobile-primary);
}

.soda-mobile-settings-panel__icon .icon-base {
  --bs-icon-size: 2rem;
  width: 2rem !important;
  height: 2rem !important;
  inline-size: 2rem !important;
  block-size: 2rem !important;
  font-size: 2rem !important;
  line-height: 1 !important;
}

.soda-mobile-settings-panel__svg {
  width: 2rem;
  height: 2rem;
  aspect-ratio: 1 / 1;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--soda-mobile-module-icon-stroke);
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
  vector-effect: non-scaling-stroke;
}

.soda-mobile-settings-panel h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1.12rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-settings-panel p {
  margin: 0.28rem 0 0;
  color: var(--soda-mobile-muted);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.32;
}

.soda-mobile-theme-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.soda-mobile-theme-choice__option {
  min-height: 5.5rem;
  display: grid;
  gap: 0.55rem;
  align-content: center;
  justify-items: center;
  padding: 0.85rem 0.65rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.7rem;
  color: var(--soda-mobile-text);
  font: inherit;
  background: var(--soda-mobile-card-bg);
}

.soda-mobile-theme-choice__option.is-active {
  border-color: var(--soda-mobile-primary);
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
}

.soda-mobile-theme-choice__option .icon-base {
  --bs-icon-size: 1.9rem;
  width: 1.9rem !important;
  height: 1.9rem !important;
  inline-size: 1.9rem !important;
  block-size: 1.9rem !important;
  font-size: 1.9rem !important;
  line-height: 1 !important;
}

.soda-mobile-theme-choice__option span {
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-settings-form .form-label {
  margin-bottom: 0.5rem;
  color: var(--soda-mobile-text);
  font-size: 0.9rem;
  font-weight: 800;
}

.soda-mobile-settings-form__submit {
  width: 100%;
  min-height: 3.05rem;
  border: 1px solid var(--soda-mobile-border) !important;
  border-radius: 0.68rem;
  color: var(--soda-mobile-primary) !important;
  background: var(--soda-mobile-soft-button-bg) !important;
  box-shadow: none !important;
  font-weight: 800;
}

.soda-mobile-settings-form__submit:active {
  background: var(--soda-mobile-card-press-bg) !important;
}

.soda-mobile-settings-status {
  min-height: 1.2rem;
  margin-top: 0.85rem !important;
  color: var(--soda-mobile-muted) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  text-align: center;
}

.soda-mobile-settings-form .soda-mobile-settings-status:empty {
  display: none;
}

.soda-mobile-settings-status.is-success {
  color: var(--soda-mobile-primary) !important;
}

.soda-mobile-settings-status.is-error {
  color: #ea5455 !important;
}

.soda-mobile-application-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
  margin-top: 0.9rem;
}

.soda-mobile-application-actions__button {
  min-height: 3.05rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  border: 1px solid var(--soda-mobile-border) !important;
  border-radius: 0.68rem;
  background: var(--soda-mobile-soft-button-bg) !important;
  box-shadow: none !important;
  font-weight: 800;
}

.soda-mobile-application-actions__button.btn-primary {
  color: var(--soda-mobile-primary) !important;
}

.soda-mobile-application-actions__button.btn-danger {
  color: #ea5455 !important;
}

.soda-mobile-application-actions__button:active {
  background: var(--soda-mobile-card-press-bg) !important;
}

.soda-mobile-application-actions__button .icon-base {
  --bs-icon-size: 1.05rem;
  width: 1.05rem !important;
  height: 1.05rem !important;
  inline-size: 1.05rem !important;
  block-size: 1.05rem !important;
  font-size: 1.05rem !important;
}

.soda-mobile-info-list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
}

.soda-mobile-info-list div {
  display: grid;
  gap: 0.2rem;
  padding: 0.85rem 0;
  border-top: 1px solid var(--soda-mobile-border);
}

.soda-mobile-info-list div:first-child {
  border-top: 0;
  padding-top: 0;
}

.soda-mobile-info-list dt {
  color: var(--soda-mobile-muted);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.25;
}

.soda-mobile-info-list dd {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.25;
}

.soda-mobile-data-list-panel {
  position: relative;
  overflow: hidden;
  min-height: 18rem;
  padding: 0 var(--soda-mobile-list-panel-inline-padding);
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  background: var(--soda-mobile-panel-bg);
  box-shadow: none;
}

.soda-mobile-data-list-panel.is-empty-state {
  overflow: visible;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.soda-mobile-data-list-panel[data-mobile-mail-panel].is-loaded:not(.is-empty-state) {
  min-height: 0;
}

.soda-mobile-data-list-panel[data-mobile-notices-panel].is-loaded:not(.is-empty-state) {
  min-height: 0;
}

.soda-mobile-data-list {
  display: grid;
}

.soda-mobile-notices-list {
  display: grid;
}

.soda-mobile-mail-list {
  display: grid;
}

.soda-mobile-notice-row__icon {
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
}

.soda-mobile-notice-row__icon--calendar {
  color: #28c76f;
  background: rgba(40, 199, 111, 0.14);
}

.soda-mobile-notice-row__icon .icon-base {
  --bs-icon-size: 1.3rem;
  width: 1.3rem !important;
  height: 1.3rem !important;
  inline-size: 1.3rem !important;
  block-size: 1.3rem !important;
  font-size: 1.3rem !important;
}

.soda-mobile-notice-row__body {
  gap: 0.18rem;
}

.soda-mobile-notice-row__meta {
  min-width: 4.9rem;
}

.soda-mobile-notice-row__meta .soda-mobile-mail-row__meta-icons {
  width: 100%;
  justify-content: flex-end;
}

.soda-mobile-notice-row__unread {
  display: none;
}

.soda-mobile-notice-row.is-read .soda-mobile-notice-row__unread {
  opacity: 0;
}

.soda-mobile-notice-row__delete {
  width: 1.18rem;
  height: 1.18rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--soda-mobile-muted);
  background: transparent;
}

.soda-mobile-notice-row__delete[disabled] {
  opacity: 0.45;
}

.soda-mobile-notice-row__delete .icon-base {
  --bs-icon-size: 0.98rem;
  width: 0.98rem !important;
  height: 0.98rem !important;
  inline-size: 0.98rem !important;
  block-size: 0.98rem !important;
  font-size: 0.98rem !important;
}

.soda-mobile-mail-row {
  width: calc(100% + (2 * var(--soda-mobile-list-panel-inline-padding)));
  display: grid;
  grid-template-columns: 2.7rem minmax(0, 1fr) auto;
  gap: 0.72rem;
  align-items: center;
  min-height: 5.35rem;
  margin-inline: calc(-1 * var(--soda-mobile-list-panel-inline-padding));
  padding: 0.86rem var(--soda-mobile-list-panel-inline-padding);
  border: 0;
  border-bottom: 1px solid var(--soda-mobile-border);
  color: inherit;
  background: transparent;
  text-align: left;
}

.soda-mobile-mail-row:last-child {
  border-bottom: 0;
}

.soda-mobile-mail-row:focus,
.soda-mobile-mail-row:hover {
  color: inherit;
  background: transparent;
}

.soda-mobile-mail-row:focus-visible {
  outline: 2px solid rgba(var(--bs-primary-rgb), 0.36);
  outline-offset: -2px;
}

.soda-mobile-mail-row:active,
.soda-mobile-mail-row.is-pressed {
  background: rgba(var(--bs-primary-rgb), 0.05);
}

.soda-mobile-mail-row__avatar {
  width: 2.7rem;
  height: 2.7rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.soda-mobile-mail-row__avatar.soda-mobile-notice-row__icon {
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
}

.soda-mobile-mail-row__avatar.soda-mobile-notice-row__icon--calendar {
  color: #28c76f;
  background: rgba(40, 199, 111, 0.14);
}

.soda-mobile-mail-row__body {
  min-width: 0;
  display: grid;
  gap: 0.18rem;
}

.soda-mobile-mail-row__sender,
.soda-mobile-mail-row__subject,
.soda-mobile-mail-row__preview {
  min-width: 0;
  display: block;
  overflow: hidden;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-mail-row__sender {
  color: var(--soda-mobile-text);
  font-size: 0.88rem;
  font-weight: 800;
}

.soda-mobile-mail-row__subject {
  color: var(--soda-mobile-text);
  font-size: 0.82rem;
  font-weight: 700;
}

.soda-mobile-mail-row__preview {
  color: var(--soda-mobile-muted);
  font-size: 0.78rem;
  font-weight: 600;
}

.soda-mobile-mail-row__meta {
  min-width: 3.35rem;
  display: grid;
  gap: 0.36rem;
  justify-items: end;
}

.soda-mobile-mail-row__meta time {
  color: var(--soda-mobile-muted);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.soda-mobile-mail-row__meta-icons,
.soda-mobile-mail-row__labels {
  display: inline-flex;
  align-items: center;
  gap: 0.22rem;
}

.soda-mobile-mail-row__attachment,
.soda-mobile-mail-row__flag,
.soda-mobile-mail-row__chevron {
  color: var(--soda-mobile-muted);
  --bs-icon-size: 0.98rem;
  width: 0.98rem !important;
  height: 0.98rem !important;
  inline-size: 0.98rem !important;
  block-size: 0.98rem !important;
  font-size: 0.98rem !important;
}

.soda-mobile-mail-row__flag {
  color: var(--soda-mobile-mail-tag-secondary-color);
}

.soda-mobile-mail-row__flag--company {
  color: var(--soda-mobile-mail-tag-company-color);
}

.soda-mobile-mail-row__flag--important {
  color: var(--soda-mobile-mail-tag-important-color);
}

.soda-mobile-mail-row__flag--private {
  color: var(--soda-mobile-mail-tag-private-color);
}

.soda-mobile-mail-row__flag--system {
  color: var(--soda-mobile-mail-tag-system-color);
}

.soda-mobile-mail-row__flag--secondary {
  color: var(--soda-mobile-mail-tag-secondary-color);
}

.soda-mobile-mail-row__unread {
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 999px;
  background: var(--soda-mobile-primary);
}

.soda-mobile-mail-row.is-read .soda-mobile-mail-row__unread {
  opacity: 0;
}

.soda-mobile-mail-row.is-read .soda-mobile-mail-row__sender,
.soda-mobile-mail-row.is-read .soda-mobile-mail-row__subject {
  font-weight: 700;
}

.soda-mobile-data-row {
  display: grid;
  gap: 0.28rem;
  min-height: 5.35rem;
  padding: 0.86rem 0;
  border-bottom: 1px solid var(--soda-mobile-border);
}

.soda-mobile-data-row:last-child {
  border-bottom: 0;
}

.soda-mobile-data-row__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: start;
}

.soda-mobile-data-row__head time,
.soda-mobile-data-row__muted {
  color: var(--soda-mobile-muted);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.25;
}

.soda-mobile-data-row__head strong {
  color: var(--soda-mobile-text);
  font-size: 0.92rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: right;
  white-space: nowrap;
}

.soda-mobile-data-row__main {
  display: flex;
  gap: 0.58rem;
  align-items: center;
  justify-content: space-between;
  font-size: 0.98rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-data-row__invoice-link {
  min-width: 0;
  display: block;
  overflow: hidden;
  color: var(--soda-mobile-primary);
  font: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none;
}

.soda-mobile-data-row__invoice-link:focus,
.soda-mobile-data-row__invoice-link:hover {
  color: var(--soda-mobile-primary);
  text-decoration: none;
}

.soda-mobile-data-row__muted,
.soda-mobile-data-row__contractor,
.soda-mobile-data-row__ksef {
  min-width: 0;
  display: block;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-data-row__contractor {
  color: var(--soda-mobile-text);
}

.soda-mobile-data-row__muted,
.soda-mobile-data-row__ksef {
  color: var(--soda-mobile-muted);
  text-decoration: none;
}

.soda-mobile-data-row__ksef:focus,
.soda-mobile-data-row__ksef:hover {
  color: var(--soda-mobile-muted);
  text-decoration: none;
}

.soda-mobile-data-row__log-message {
  min-width: 0;
  display: block;
  overflow: hidden;
  color: var(--soda-mobile-text);
  font: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-data-row__status {
  color: var(--soda-mobile-muted);
}

.soda-mobile-data-row__status--ok {
  color: #28c76f;
}

.soda-mobile-data-row--placeholder {
  visibility: hidden;
}

.soda-mobile-data-row__meta {
  display: flex;
  gap: 0.36rem;
  align-items: baseline;
  min-width: 0;
  color: var(--soda-mobile-muted);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.25;
}

.soda-mobile-data-row__meta span {
  flex: 0 0 auto;
}

.soda-mobile-data-row__meta strong {
  min-width: 0;
  color: var(--soda-mobile-muted);
  font-size: inherit;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.soda-mobile-empty-state--compact {
  min-height: 16rem;
  padding: 1rem;
  box-shadow: none;
}

.soda-mobile-ksef-stats-panel {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  min-width: 0;
  padding: 1rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
  background: var(--soda-mobile-panel-bg);
  box-shadow: 0 1rem 2.4rem rgba(75, 70, 92, 0.1);
}

.soda-mobile-lazy-panel__loader {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  color: var(--soda-mobile-muted);
  background: var(--soda-mobile-panel-bg);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.16s ease-out;
}

.soda-mobile-lazy-panel__content {
  min-width: 0;
  max-width: 100%;
  opacity: 1;
  transition: opacity 0.22s ease-out;
}

.soda-mobile-lazy-panel.is-loading .soda-mobile-lazy-panel__loader,
.soda-mobile-lazy-panel.is-error .soda-mobile-lazy-panel__loader {
  opacity: 1;
}

.soda-mobile-lazy-panel.is-error .soda-mobile-lazy-panel__loader {
  color: #ea5455;
}

.soda-mobile-lazy-panel.is-loading .soda-mobile-lazy-panel__content,
.soda-mobile-lazy-panel.is-error .soda-mobile-lazy-panel__content {
  opacity: 0;
}

.soda-mobile-mail-detail {
  display: grid;
  align-content: start;
  align-items: start;
  gap: 0.82rem;
  width: calc(100% - var(--soda-mobile-mail-detail-inline-safe));
  min-height: 18rem;
  margin-inline-end: var(--soda-mobile-mail-detail-inline-safe);
  padding: 1rem;
}

.soda-mobile-mail-detail__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(0.32rem, 1.6vw, 0.45rem);
  width: calc(100% - var(--soda-mobile-mail-detail-inline-safe));
  min-width: 0;
  margin: 0 var(--soda-mobile-mail-detail-inline-safe) 0.75rem 0;
}

.soda-mobile-mail-detail__actions:empty {
  display: none;
}

.soda-mobile-mail-detail__action {
  width: 100%;
  min-width: 0;
  min-height: 2.08rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.34rem clamp(0.46rem, 2.2vw, 0.68rem);
  border-radius: 0.45rem;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
}

.soda-mobile-mail-detail__action span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.soda-mobile-mail-detail__empty {
  min-height: 16rem;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 0.5rem;
  color: var(--soda-mobile-muted);
  text-align: center;
}

.soda-mobile-mail-detail__empty h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
}

.soda-mobile-mail-detail__empty p {
  max-width: 16rem;
  margin: 0;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.35;
}

.soda-mobile-mail-detail__header {
  min-width: 0;
  display: grid;
  gap: 0.34rem;
  padding-bottom: 0.58rem;
  border-bottom: 1px solid var(--soda-mobile-border);
}

.soda-mobile-mail-detail__avatar {
  width: 2.9rem;
  height: 2.9rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1;
}

.soda-mobile-mail-detail__header h2 {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-mail-detail__recipients {
  display: grid;
  gap: 0.06rem;
  min-width: 0;
}

.soda-mobile-mail-detail__recipient {
  min-width: 0;
  display: grid;
  grid-template-columns: 1.9rem minmax(0, 1fr);
  gap: 0.2rem;
  align-items: baseline;
}

.soda-mobile-mail-detail__recipient span {
  color: var(--soda-mobile-muted);
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.18;
}

.soda-mobile-mail-detail__recipient strong {
  min-width: 0;
  overflow: hidden;
  color: var(--soda-mobile-muted);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.18;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-mail-detail__body {
  color: var(--soda-mobile-text);
  font-size: 0.86rem;
  font-weight: 600;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.soda-mobile-mail-detail__body p {
  margin: 0 0 0.85rem;
}

.soda-mobile-mail-detail__body p:last-child {
  margin-bottom: 0;
}

.soda-mobile-mail-detail__muted {
  color: var(--soda-mobile-muted);
}

.soda-mobile-mail-detail__attachments {
  display: grid;
  gap: 0.5rem;
  padding-top: 0;
}

.soda-mobile-mail-detail__attachments h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1.25;
}

.soda-mobile-mail-detail__attachments>div {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.45rem;
}

.soda-mobile-mail-detail__attachment {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.36rem;
  padding: 0.42rem 0.56rem;
  border-radius: 0.55rem;
  color: var(--soda-mobile-text);
  background: var(--soda-mobile-primary-soft);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}

.soda-mobile-mail-detail__attachment span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-mail-detail__attachment .icon-base {
  flex: 0 0 auto;
  color: var(--soda-mobile-primary);
  --bs-icon-size: 0.92rem;
  width: 0.92rem !important;
  height: 0.92rem !important;
  inline-size: 0.92rem !important;
  block-size: 0.92rem !important;
  font-size: 0.92rem !important;
}

.soda-mobile-ksef-stats-panel__summary {
  display: grid;
  gap: 0.14rem;
  min-width: 0;
  margin-bottom: 1.1rem;
}

.soda-mobile-ksef-stats-panel__summary p {
  min-width: 0;
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.16;
  overflow-wrap: anywhere;
}

.soda-mobile-ksef-stats-panel__summary span,
.soda-mobile-ksef-stats-panel__summary em {
  min-width: 0;
  color: var(--soda-mobile-muted);
  font-style: normal;
  font-weight: 700;
  line-height: 1.24;
  overflow-wrap: anywhere;
}

.soda-mobile-ksef-stats-panel__summary span {
  font-size: 0.94rem;
}

.soda-mobile-ksef-stats-panel__summary strong {
  min-width: 0;
  margin-top: 1rem;
  color: var(--soda-mobile-text);
  font-size: 2.18rem;
  font-weight: 800;
  line-height: 1;
  overflow-wrap: anywhere;
}

.soda-mobile-ksef-stats-panel__summary em {
  font-size: 1rem;
}

.soda-mobile-ksef-stats-panel__list {
  display: grid;
  gap: 0.92rem;
}

.soda-mobile-ksef-stats-panel__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.9rem;
  align-items: center;
  min-width: 0;
}

.soda-mobile-ksef-stats-panel__item>span:last-child {
  min-width: 0;
  max-width: 100%;
}

.soda-mobile-ksef-stats-panel__icon {
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.55rem;
  color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary-soft);
}

.soda-mobile-ksef-stats-panel__icon .icon-base {
  --bs-icon-size: 1.45rem;
  width: 1.45rem !important;
  height: 1.45rem !important;
  inline-size: 1.45rem !important;
  block-size: 1.45rem !important;
  font-size: 1.45rem !important;
  line-height: 1 !important;
}

.soda-mobile-ksef-stats-panel__item strong,
.soda-mobile-ksef-stats-panel__item em {
  display: block;
  line-height: 1.22;
  min-width: 0;
  overflow-wrap: anywhere;
}

.soda-mobile-ksef-stats-panel__item strong {
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
}

.soda-mobile-ksef-stats-panel__item strong small {
  color: var(--soda-mobile-muted);
  font-size: 0.86em;
  font-weight: 800;
}

.soda-mobile-ksef-stats-panel__item em {
  margin-top: 0.18rem;
  color: var(--soda-mobile-muted);
  font-size: 0.95rem;
  font-style: normal;
  font-weight: 700;
}

.soda-mobile-ksef-stats-panel__status {
  min-height: 1.2rem;
  margin: 1rem 0 0;
  color: var(--soda-mobile-muted);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.soda-mobile-ksef-stats-panel__status.is-error {
  color: #ea5455;
}

.soda-mobile-task-report {
  position: relative;
  min-height: 18rem;
}

.soda-mobile-task-report .soda-mobile-lazy-panel__loader {
  border: 1px solid var(--soda-mobile-border);
  border-radius: 0.75rem;
}

.soda-mobile-task-report .soda-mobile-lazy-panel__content {
  display: grid;
  gap: 0.9rem;
}

.soda-mobile-task-report-card {
  box-shadow: none;
}

.soda-mobile-task-report-card__header {
  margin-bottom: 1rem;
}

.soda-mobile-task-report-card__header h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-task-progress-list {
  display: grid;
  gap: 0.82rem;
}

.soda-mobile-task-progress-list h2 {
  margin: 0;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-task-progress-row {
  display: grid;
  gap: 0.4rem;
  min-width: 0;
}

.soda-mobile-task-progress-row>div {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
}

.soda-mobile-task-progress-row strong,
.soda-mobile-task-progress-row em {
  display: block;
  line-height: 1.2;
}

.soda-mobile-task-progress-row strong {
  min-width: 0;
  color: var(--soda-mobile-text);
  font-size: 0.95rem;
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soda-mobile-task-progress-row em {
  color: var(--soda-mobile-muted);
  font-size: 0.9rem;
  font-style: normal;
  font-weight: 800;
  white-space: nowrap;
}

.soda-mobile-task-progress-track {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0.36rem;
  display: block;
  border-radius: 999px;
  background: var(--soda-mobile-primary-soft);
}

.soda-mobile-task-progress-track span {
  width: 0%;
  height: 100%;
  display: block;
  border-radius: inherit;
  background: var(--soda-mobile-primary);
  transition: width 0.22s ease-out;
}

.soda-mobile-terminal-panel {
  position: relative;
  overflow: hidden;
  height: clamp(22rem, calc(100svh - 12.5rem), 34rem);
  margin-right: 0.15rem;
  margin-left: 0.15rem;
  border: 1px solid rgba(134, 251, 85, 0.2);
  border-radius: 0.75rem;
  background: rgb(2, 0, 22);
  box-shadow: 0 1rem 2.6rem rgba(2, 0, 22, 0.22);
}

.soda-mobile-terminal-panel__loader {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.85rem 1rem;
  color: rgba(134, 251, 85, 0.78);
  background: rgb(2, 0, 22);
  font-family: "Courier New", Courier, monospace;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.48;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.18s ease-out;
}

.soda-mobile-terminal-panel__content {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  margin: 0;
  overflow: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 0.85rem 1rem;
  color: #86fb55;
  background: transparent;
  font-family: "Courier New", Courier, monospace;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.48;
  opacity: 0;
  white-space: pre-wrap;
  word-break: break-word;
  scrollbar-gutter: stable;
  touch-action: pan-y;
  transition: opacity 0.22s ease-out;
}

.soda-mobile-terminal-panel.is-loading .soda-mobile-terminal-panel__loader {
  opacity: 1;
}

.soda-mobile-terminal-panel.is-loaded .soda-mobile-terminal-panel__content {
  opacity: 1;
}

.soda-mobile-terminal-panel__content.is-error {
  color: #ff6b6b;
}

.soda-mobile-terminal-panel__content::selection,
.soda-mobile-terminal-panel__content *::selection {
  color: #dfffd7;
  background: rgba(134, 251, 85, 0.22);
}

.soda-mobile-switch-row {
  min-height: 4.5rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 0.85rem;
  align-items: center;
  padding: 0.85rem 0;
  color: var(--soda-mobile-text);
}

.soda-mobile-switch-row strong {
  display: block;
  color: var(--soda-mobile-text);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.2;
}

.soda-mobile-switch-row small {
  display: block;
  margin-top: 0.25rem;
  color: var(--soda-mobile-muted);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.25;
}

.soda-mobile-switch-row__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.soda-mobile-switch-row__track {
  width: 3.1rem;
  height: 1.75rem;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  padding: 0.2rem;
  border: 1px solid var(--soda-mobile-border);
  border-radius: 999px;
  background: rgba(75, 70, 92, 0.12);
  transition: background 0.2s ease, border-color 0.2s ease;
}

.soda-mobile-switch-row__thumb {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 999px;
  background: var(--soda-mobile-panel);
  box-shadow: 0 0.25rem 0.7rem rgba(75, 70, 92, 0.18);
  transform: translate3d(0, 0, 0);
  transition: transform 0.2s ease;
}

.soda-mobile-switch-row__input:checked+.soda-mobile-switch-row__track {
  border-color: var(--soda-mobile-primary);
  background: var(--soda-mobile-primary);
}

.soda-mobile-switch-row__input:checked+.soda-mobile-switch-row__track .soda-mobile-switch-row__thumb {
  transform: translate3d(1.35rem, 0, 0);
}

[data-bs-theme="dark"] .soda-mobile-switch-row__track {
  border-color: rgba(230, 226, 255, 0.28);
  background: rgba(230, 226, 255, 0.1);
}

[data-bs-theme="dark"] .soda-mobile-switch-row__thumb {
  background: #aaa6bd;
  box-shadow: 0 0.25rem 0.7rem rgba(0, 0, 0, 0.24);
}

[data-bs-theme="dark"] .soda-mobile-switch-row__input:checked+.soda-mobile-switch-row__track .soda-mobile-switch-row__thumb {
  background: #fff;
}

.soda-mobile-switch-row__input:disabled+.soda-mobile-switch-row__track {
  opacity: 0.65;
}

.soda-mobile-switch-row__input:focus-visible+.soda-mobile-switch-row__track {
  box-shadow: 0 0 0 0.22rem rgba(115, 103, 240, 0.14);
}

@media (min-width: 640px) {
  .soda-mobile-auth {
    align-items: center;
  }
}

@media (max-height: 720px) {
  .soda-mobile-login {
    padding-top: max(0.85rem, env(safe-area-inset-top));
    padding-bottom: max(0.65rem, env(safe-area-inset-bottom));
  }

  .soda-mobile-login__content {
    padding: 0.55rem 0;
    transform: translate3d(0, calc(-1 * clamp(1.35rem, 5svh, 2.4rem)), 0);
  }

  .soda-mobile-login__intro {
    margin-bottom: 1.1rem;
  }

  .soda-mobile-login h1 {
    font-size: clamp(1.8rem, 8vw, 2.35rem);
  }

  .soda-mobile-login__form {
    padding: 1rem;
  }
}
