/* [project]/components/feedback/cards/Cards.module.css [app-client] (css) */
.Cards-module__D9W7EG__blockingOverlay {
  z-index: 9999;
  -webkit-backdrop-filter: blur(8px);
  width: 100dvw;
  height: 100dvh;
  padding: 16px;
  padding-top: max(16px, env(safe-area-inset-top));
  padding-bottom: max(16px, env(safe-area-inset-bottom));
  padding-left: max(16px, env(safe-area-inset-left));
  padding-right: max(16px, env(safe-area-inset-right));
  overscroll-behavior: contain;
  background: #0f172aa6;
  place-items: center;
  animation: .24s ease-out Cards-module__D9W7EG__overlayIn;
  display: grid;
  position: fixed;
  inset: 0;
}

@keyframes Cards-module__D9W7EG__overlayIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.Cards-module__D9W7EG__alertOverlay {
  z-index: 8000;
  -webkit-backdrop-filter: blur(6px);
  width: 100dvw;
  height: 100dvh;
  padding: 16px;
  padding-top: max(16px, env(safe-area-inset-top));
  padding-bottom: max(16px, env(safe-area-inset-bottom));
  padding-left: max(16px, env(safe-area-inset-left));
  padding-right: max(16px, env(safe-area-inset-right));
  overscroll-behavior: contain;
  background: #0f172a73;
  place-items: center;
  animation: .2s ease-out Cards-module__D9W7EG__overlayIn;
  display: grid;
  position: fixed;
  inset: 0;
}

.Cards-module__D9W7EG__card {
  -webkit-overflow-scrolling: touch;
  background: linear-gradient(145deg, #fffffffa 0%, #f8fafcf5 100%);
  border: 1px solid #0891b22e;
  border-radius: 22px;
  flex-direction: column;
  width: 100%;
  max-width: 580px;
  max-height: calc(100dvh - 32px);
  animation: .28s cubic-bezier(.16, 1, .3, 1) Cards-module__D9W7EG__cardIn;
  display: flex;
  overflow-y: auto;
  box-shadow: 0 32px 80px #00000052, inset 0 0 0 1px #fff9;
}

.Cards-module__D9W7EG__cardBlocking {
  position: relative;
}

.Cards-module__D9W7EG__cardBlocking:before {
  content: "";
  background: var(--level-primary);
  border-radius: 3px;
  width: 3px;
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 7px;
}

@keyframes Cards-module__D9W7EG__cardIn {
  from {
    opacity: 0;
    transform: translateY(16px)scale(.97);
  }

  to {
    opacity: 1;
    transform: translateY(0)scale(1);
  }
}

.Cards-module__D9W7EG__header {
  border-bottom: 1px solid #0891b21a;
  align-items: flex-start;
  gap: 14px;
  padding: 18px 24px 14px;
  display: flex;
}

.Cards-module__D9W7EG__headerIcon {
  background: var(--level-bg-light);
  width: 44px;
  height: 44px;
  color: var(--level-primary);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-top: 2px;
  display: flex;
}

.Cards-module__D9W7EG__title {
  letter-spacing: -.015em;
  color: var(--level-text);
  margin: 0 0 6px;
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 700;
  line-height: 1.2;
}

.Cards-module__D9W7EG__message {
  color: #334155eb;
  margin: 0;
  font-size: clamp(17px, 1.7vw, 21px);
  font-weight: 500;
  line-height: 1.4;
}

.Cards-module__D9W7EG__message > div + div {
  margin-top: 4px;
}

.Cards-module__D9W7EG__closeBtn {
  color: #64748ba6;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  min-width: 36px;
  height: 36px;
  margin-top: -2px;
  margin-right: -6px;
  transition: all .16s;
  display: flex;
}

.Cards-module__D9W7EG__closeBtn:hover {
  color: #475569f2;
  background: #64748b1a;
}

.Cards-module__D9W7EG__closeBtn:focus-visible {
  outline: 2px solid var(--level-primary);
  outline-offset: 2px;
}

.Cards-module__D9W7EG__body {
  flex-direction: column;
  gap: 14px;
  padding: 14px 24px;
  display: flex;
}

.Cards-module__D9W7EG__section {
  border: 1px solid var(--level-border-light);
  background: var(--level-bg-light);
  border-radius: 14px;
  padding: 14px 18px;
}

.Cards-module__D9W7EG__sectionTitle {
  letter-spacing: -.01em;
  color: #0f172af2;
  margin: 0 0 10px;
  font-size: clamp(18px, 1.8vw, 22px);
  font-weight: 700;
}

.Cards-module__D9W7EG__list {
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.Cards-module__D9W7EG__listItem {
  color: #334155eb;
  align-items: flex-start;
  gap: 12px;
  font-size: clamp(16px, 1.6vw, 19px);
  font-weight: 500;
  line-height: 1.45;
  display: flex;
}

.Cards-module__D9W7EG__bullet {
  color: #fff;
  background: var(--level-primary);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  margin-top: 1px;
  font-size: 12px;
  font-weight: 800;
  display: flex;
}

.Cards-module__D9W7EG__actions {
  flex-direction: column;
  gap: 10px;
  padding: 6px 24px 16px;
  display: flex;
}

.Cards-module__D9W7EG__btn {
  letter-spacing: -.005em;
  cursor: pointer;
  border: none;
  border-radius: 14px;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 54px;
  padding: 14px 18px;
  font-family: inherit;
  font-size: clamp(20px, 2vw, 24px);
  font-weight: 700;
  transition: all .18s;
  display: flex;
}

.Cards-module__D9W7EG__btnPrimary {
  background: var(--level-primary);
  color: #fff;
  box-shadow: 0 6px 18px #00000029;
}

.Cards-module__D9W7EG__btnPrimary:hover:not(:disabled) {
  filter: brightness(1.08);
  transform: translateY(-1px);
  box-shadow: 0 10px 24px #0003;
}

.Cards-module__D9W7EG__btnPrimary:active:not(:disabled) {
  transform: translateY(0);
}

.Cards-module__D9W7EG__btnSecondary {
  color: #334155eb;
  background: #f1f5f9f2;
  border: 1.5px solid #94a3b866;
  min-height: 52px;
  padding: 12px 18px;
  font-size: clamp(17px, 1.7vw, 21px);
  font-weight: 700;
}

.Cards-module__D9W7EG__btnSecondary:hover:not(:disabled) {
  background: #e2e8f0f2;
  border-color: #94a3b899;
}

.Cards-module__D9W7EG__btn:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.Cards-module__D9W7EG__btn:focus-visible {
  outline: 2px solid var(--level-primary);
  outline-offset: 2px;
}

@media (max-width: 480px) {
  .Cards-module__D9W7EG__blockingOverlay, .Cards-module__D9W7EG__alertOverlay {
    padding: 12px;
    padding-top: max(12px, env(safe-area-inset-top));
    padding-bottom: max(12px, env(safe-area-inset-bottom));
    justify-content: center;
    place-items: center;
    display: grid;
  }

  .Cards-module__D9W7EG__card {
    border-radius: 22px;
    max-width: calc(100% - 24px);
    max-height: calc(100dvh - 24px);
    margin: 0 auto;
  }

  .Cards-module__D9W7EG__header {
    gap: 12px;
    padding: 16px 20px 12px;
  }

  .Cards-module__D9W7EG__headerIcon {
    width: 40px;
    height: 40px;
  }

  .Cards-module__D9W7EG__title {
    margin-bottom: 4px;
    font-size: clamp(20px, 5.5vw, 25px);
  }

  .Cards-module__D9W7EG__message {
    font-size: clamp(15px, 4.4vw, 18px);
    line-height: 1.4;
  }

  .Cards-module__D9W7EG__body {
    gap: 12px;
    padding: 12px 20px;
  }

  .Cards-module__D9W7EG__section {
    padding: 12px 14px;
  }

  .Cards-module__D9W7EG__sectionTitle {
    margin-bottom: 8px;
    font-size: clamp(16px, 4.6vw, 19px);
  }

  .Cards-module__D9W7EG__listItem {
    font-size: clamp(15px, 4.2vw, 17px);
    line-height: 1.4;
  }

  .Cards-module__D9W7EG__bullet {
    width: 22px;
    height: 22px;
    font-size: 11px;
  }

  .Cards-module__D9W7EG__list {
    gap: 8px;
  }

  .Cards-module__D9W7EG__actions {
    gap: 8px;
    padding: 4px 20px 14px;
  }

  .Cards-module__D9W7EG__btn {
    border-radius: 12px;
    min-height: 50px;
    padding: 12px 16px;
    font-size: clamp(17px, 4.8vw, 21px);
  }

  .Cards-module__D9W7EG__btnSecondary {
    min-height: 48px;
    padding: 11px 16px;
    font-size: clamp(15px, 4.2vw, 18px);
  }
}

@media (max-width: 380px) {
  .Cards-module__D9W7EG__blockingOverlay, .Cards-module__D9W7EG__alertOverlay {
    padding: 8px;
  }

  .Cards-module__D9W7EG__card {
    max-width: calc(100% - 16px);
    max-height: calc(100dvh - 16px);
  }
}

.Cards-module__D9W7EG__toastContainer {
  top: max(16px, env(safe-area-inset-top));
  z-index: 9000;
  pointer-events: none;
  flex-direction: column;
  gap: 12px;
  max-width: calc(100dvw - 32px);
  display: flex;
  position: fixed;
  right: 16px;
}

.Cards-module__D9W7EG__toastContainer > * {
  pointer-events: auto;
}

.Cards-module__D9W7EG__toast {
  box-sizing: border-box;
  border: 1px solid var(--hub-border, #e2e6e7);
  background: linear-gradient(145deg, #fffffffa 0%, #f8fafcf5 100%);
  border-radius: 14px;
  align-items: center;
  gap: 13px;
  min-width: 320px;
  max-width: 460px;
  padding: 14px 16px 14px 20px;
  animation: .25s cubic-bezier(.16, 1, .3, 1) Cards-module__D9W7EG__toastEnter;
  display: flex;
  position: relative;
  box-shadow: 0 12px 32px #00000024, 0 4px 10px #00000014;
}

.Cards-module__D9W7EG__toast:before {
  content: "";
  background: var(--level-primary);
  border-radius: 3px;
  width: 3px;
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 7px;
}

@keyframes Cards-module__D9W7EG__toastEnter {
  from {
    opacity: 0;
    transform: translateX(24px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.Cards-module__D9W7EG__toastIcon {
  background: var(--level-bg-light);
  width: 30px;
  height: 30px;
  color: var(--level-primary);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.Cards-module__D9W7EG__toastContent {
  flex-direction: column;
  flex: 1;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.Cards-module__D9W7EG__toastTitle {
  color: #0f172af2;
  letter-spacing: -.01em;
  font-size: clamp(17px, 1.6vw, 19px);
  font-weight: 700;
}

.Cards-module__D9W7EG__toastMessage {
  color: #334155d9;
  font-size: clamp(15px, 1.4vw, 17px);
  font-weight: 500;
  line-height: 1.4;
}

.Cards-module__D9W7EG__toastClose {
  color: #64748b99;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  margin: -6px -6px -6px 0;
  transition: all .15s;
  display: flex;
}

.Cards-module__D9W7EG__toastClose:hover {
  color: #475569f2;
  background: #64748b1a;
}

@media (max-width: 480px) {
  .Cards-module__D9W7EG__toastContainer {
    top: max(12px, env(safe-area-inset-top));
    left: 12px;
    right: 12px;
  }

  .Cards-module__D9W7EG__toast {
    gap: 10px;
    min-width: 0;
    max-width: 100%;
    padding: 12px 14px;
  }

  .Cards-module__D9W7EG__toastIcon {
    width: 28px;
    height: 28px;
  }

  .Cards-module__D9W7EG__toastTitle {
    font-size: 16px;
  }

  .Cards-module__D9W7EG__toastMessage {
    font-size: 14.5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Cards-module__D9W7EG__card, .Cards-module__D9W7EG__toast, .Cards-module__D9W7EG__blockingOverlay, .Cards-module__D9W7EG__alertOverlay {
    animation: none !important;
  }

  .Cards-module__D9W7EG__btnPrimary:hover:not(:disabled) {
    transform: none !important;
  }
}

.Cards-module__D9W7EG__supportFooter {
  text-align: center;
  border-top: 1px solid #0891b21a;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin-top: 0;
  padding: 12px 24px 16px;
  animation: .38s ease-out .2s both Cards-module__D9W7EG__supportFadeIn;
  display: flex;
}

@keyframes Cards-module__D9W7EG__supportFadeIn {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.Cards-module__D9W7EG__supportText {
  color: #475569d9;
  margin: 0;
  font-size: clamp(13.5px, 1.25vw, 15px);
  font-weight: 500;
  line-height: 1.3;
}

.Cards-module__D9W7EG__supportPillForm, .Cards-module__D9W7EG__supportPillMail {
  cursor: pointer;
  border: 1.5px solid;
  border-radius: 11px;
  align-items: center;
  gap: 8px;
  padding: 9px 15px;
  font-family: inherit;
  font-size: clamp(14.5px, 1.3vw, 16px);
  font-weight: 700;
  text-decoration: none;
  transition: background .16s, border-color .16s, transform .16s;
  display: inline-flex;
}

.Cards-module__D9W7EG__supportPillForm:hover, .Cards-module__D9W7EG__supportPillMail:hover {
  transform: translateY(-1px);
}

.Cards-module__D9W7EG__supportPillForm:active, .Cards-module__D9W7EG__supportPillMail:active {
  transform: translateY(0);
}

.Cards-module__D9W7EG__supportPillForm:focus-visible, .Cards-module__D9W7EG__supportPillMail:focus-visible {
  outline: 2px solid var(--level-primary, #0e7490);
  outline-offset: 3px;
}

.Cards-module__D9W7EG__supportPillForm svg, .Cards-module__D9W7EG__supportPillMail svg {
  flex-shrink: 0;
  width: 15px;
  height: 15px;
}

.Cards-module__D9W7EG__supportPillForm {
  color: var(--level-primary, #0e7490);
  background: #0891b21a;
  border-color: #0891b252;
}

.Cards-module__D9W7EG__supportPillForm:hover {
  background: #0891b22e;
  border-color: #0891b280;
}

.Cards-module__D9W7EG__supportPillMail {
  color: #b45309;
  background: #d977061a;
  border-color: #d9770652;
}

.Cards-module__D9W7EG__supportPillMail:hover {
  background: #d977062e;
  border-color: #d9770680;
}

@media (max-width: 480px) {
  .Cards-module__D9W7EG__supportFooter {
    gap: 7px;
    padding: 10px 20px 14px;
  }

  .Cards-module__D9W7EG__supportText {
    font-size: 13px;
  }

  .Cards-module__D9W7EG__supportPillForm, .Cards-module__D9W7EG__supportPillMail {
    padding: 8px 14px;
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .Cards-module__D9W7EG__supportFooter {
    animation: none !important;
  }

  .Cards-module__D9W7EG__supportPillForm:hover, .Cards-module__D9W7EG__supportPillMail:hover {
    transform: none !important;
  }
}

/* [project]/styles/hub-tokens.css [app-client] (css) */
:root {
  --hub-surface: #fff;
  --hub-border: #e2e6e7;
  --hub-line: #eef1f2;
  --hub-hover-border: #cfd6d8;
  --hub-ink: #1f2426;
  --hub-ink2: #454b4e;
  --hub-ink3: #6b7275;
  --hub-teal: #0891b2;
  --hub-teal2: #0e7490;
  --hub-teal3: #155e75;
  --hub-teal-bg: #e6f6fa;
  --hub-crit: #9f1239;
  --hub-crit-bg: #fcf2f5;
  --hub-amber: #f59e0b;
  --hub-amber-ink: #b45309;
  --hub-amber-bg: #fff8ec;
  --hub-ok: #0e7490;
  --hub-ok-ink: #155e75;
  --hub-ok-bg: #e6f6fa;
  --hub-info: #6b7275;
  --hub-info-ink: #454b4e;
  --hub-info-bg: #f0f2f2;
  --hub-shadow: 0 1px 2px #141e370d, 0 10px 26px -16px #141e3733;
  --hub-shadowUp: 0 2px 4px #141e370f, 0 18px 38px -20px #141e374d;
  --hub-page-bg: linear-gradient(160deg, #eef4fc 0%, #e0eaf6 55%, #dbe7f4 100%);
}

/* [project]/styles/core/tokens.css [app-client] (css) */
:root, [data-theme="light"] {
  --da-primary: #00838f;
  --da-primary-dark: #006064;
  --da-primary-light: #4dc8f0;
  --da-primary-soft: #00838f14;
  --da-primary-soft-hover: #00838f24;
  --da-secondary: #0e7490;
  --da-secondary-dark: #155e75;
  --da-secondary-light: #22b8cf;
  --da-secondary-soft: #0e749014;
  --da-gradient-brand: linear-gradient(135deg, #0891b2, #155e75);
  --da-gradient-lisere: linear-gradient(180deg, #22d3ee 0%, #0891b2 30%, #0e7490 65%, #155e75 100%);
  --da-cyan-50: #ecfeff;
  --da-cyan-100: #cffafe;
  --da-cyan-200: #a5f3fc;
  --da-cyan-300: #67e8f9;
  --da-cyan-400: #22d3ee;
  --da-cyan-500: #06b6d4;
  --da-cyan-600: #0891b2;
  --da-cyan-700: #0e7490;
  --da-cyan-800: #155e75;
  --da-cyan-900: #164e63;
  --da-violet: #9f1239;
  --da-violet-dark: #881337;
  --da-violet-text: #881337;
  --da-violet-soft: #9f12390a;
  --da-danger: #c9152c;
  --da-danger-dark: #a01020;
  --da-danger-text: #8a0e1e;
  --da-danger-soft: #c9152c0a;
  --da-warning: #e07a08;
  --da-warning-dark: #b05c00;
  --da-warning-text: #9a5500;
  --da-warning-soft: #e07a080a;
  --da-success: #0e7490;
  --da-success-dark: #155e75;
  --da-success-text: #155e75;
  --da-success-soft: #0e74900a;
  --da-info: #0097a7;
  --da-info-soft: #0097a714;
  --da-circuit-marche: #0e7490;
  --da-circuit-contrat: #00838f;
  --da-circuit-devis: #5a7a88;
  --da-circuit-hors: #c9152c;
  --da-text-primary: #24211d;
  --da-text-secondary: #46433d;
  --da-text-tertiary: #6c6a63;
  --da-text-muted: #8b887f;
  --da-text-hint: #a8a49a;
  --da-text-disabled: #b7b3a8;
  --da-text-inverse: #fff;
  --app-page-bg: var(--hub-page-bg, linear-gradient(135deg, #f7f8f8 0%, #eff2f2 100%));
  --da-bg-page: #f0f8f9;
  --da-bg-gradient: linear-gradient(150deg, #edf4f7 0%, #f0f7f9 40%, #f2f9fa 70%, #eff6f8 100%);
  --da-bg-auth: linear-gradient(150deg, #b0d0d4 0%, #bcd8dc 30%, #c6e0e4 55%, #c2dce0 80%, #bad6da 100%);
  --da-bg-splash: linear-gradient(135deg, #0a1628 0%, #122a50 25%, #1e3a8a 50%, #1e5080 75%, #1a6878 100%);
  --da-surface: #fff;
  --da-surface-secondary: #f6f9fb;
  --da-surface-hover: #00838f05;
  --da-surface-elevated: #fffffff5;
  --da-sidebar-bg: #f0f5f8;
  --da-sidebar-text: #5a7a88;
  --da-sidebar-text-active: #062030;
  --da-sidebar-active-bg: #00838f0f;
  --da-sidebar-active-bar: #00838f;
  --da-sidebar-border: #005a6912;
  --da-sidebar-brand: #004d55;
  --da-sidebar-width: 200px;
  --da-sidebar-width-collapsed: 56px;
  --da-auth-card-shadow: 0 2px 6px #003c5014, 0 8px 24px #0032461a, 0 24px 64px #00283c24, 0 0 0 1px #ffffff40;
  --da-auth-band-bg: linear-gradient(180deg, #eaf3f8 0%, #e4eff6 35%, #e0ecf4 60%, #dce9f2 100%);
  --da-auth-band-width: 128px;
  --da-auth-lisere-width: 6px;
  --da-auth-bg-gradient: linear-gradient(155deg, #1a4a5e 0%, #2a6878 50%, #1e5870 100%);
  --da-auth-halo-tr: radial-gradient(ellipse at top right, #22d3ee57, transparent 55%);
  --da-auth-halo-bl: radial-gradient(ellipse at bottom left, #2563eb3d, transparent 50%);
  --da-auth-halo-center: radial-gradient(circle, #67e8f94d 0%, #22d3ee26 30%, transparent 60%);
  --da-auth-halo-center-size: 900px;
  --da-auth-halo-center-blur: 40px;
  --da-auth-waves-opacity: .22;
  --da-auth-v3-card-bg: #f8fcfef7;
  --da-auth-v3-card-radius: 32px;
  --da-auth-v3-card-shadow: 0 1px 0 #ffffff80 inset,
    0 0 0 .5px #67e8f952,
    0 4px 12px -2px #08283c14,
    0 18px 40px -12px #08283c2e,
    0 60px 120px -24px #08283c6b,
    0 18px 60px -16px #22d3ee33;
  --da-auth-v3-accent-width-desktop: 6px;
  --da-auth-v3-accent-width-tablet: 5px;
  --da-auth-v3-accent-width-mobile: 4px;
  --da-auth-v3-accent-bg: linear-gradient(180deg, #22d3ee 0%, #0e7490 50%, #1e40af 100%);
  --da-auth-v3-input-bg: #e0f7fd8c;
  --da-auth-v3-input-border: 1.5px solid #0891b266;
  --da-auth-v3-input-border-focus: 1.5px solid #0891b2b3;
  --da-auth-v3-input-shadow: 0 1px 2px #08283c0a;
  --da-auth-v3-input-shadow-focus: 0 1px 2px #08283c0a, 0 0 0 4px #0891b22e;
  --da-auth-v3-input-radius: 14px;
  --da-auth-v3-btn-primary-radius: 14px;
  --da-auth-v3-btn-secondary-bg: #f0f9ff;
  --da-auth-v3-btn-secondary-bg-hover: #e0f2fe;
  --da-auth-v3-btn-secondary-bg-active: #bae6fd;
  --da-auth-v3-btn-secondary-color: #0c4a6e;
  --da-auth-v3-btn-secondary-border: 1.5px solid #0891b266;
  --da-auth-v3-btn-secondary-border-hover: #0891b2b3;
  --da-auth-v3-btn-secondary-border-active: #0891b2d9;
  --da-auth-v3-btn-secondary-shadow: 0 1px 2px #0f283c0f,
    0 4px 12px #0f283c14,
    0 1px 0 #ffffffb3 inset;
  --da-auth-v3-btn-secondary-shadow-hover: 0 2px 4px #0f283c14,
    0 8px 20px #0f283c24,
    0 1px 0 #ffffffd9 inset;
  --da-auth-v3-btn-secondary-shadow-active: 0 1px 2px #0f283c1f inset,
    0 1px 2px #0f283c0a;
  --da-auth-v3-btn-secondary-radius: 14px;
  --da-auth-v3-btn-focus-ring: 0 0 0 4px #0891b252;
  --da-auth-v3-btn-focus-ring-offset: 2px;
  --da-auth-v3-link-color: #0d596feb;
  --da-auth-v3-icon-color: var(--da-cyan-700);
  --da-auth-v3-icon-size: 26px;
  --da-auth-v3-icon-stroke: 1.5;
  --da-border: #f0ebe1;
  --da-border-medium: #e8e1d4;
  --da-border-hover: #00838f38;
  --da-border-active: #00838f59;
  --da-shadow-sm: 0 1px 3px #001e3c0a;
  --da-shadow-md: 0 2px 10px #001e3c0a;
  --da-shadow-lg: 0 8px 24px #001e3c14;
  --da-shadow-card: 0 2px 10px #001e3c0a;
  --da-kpi-bg: #fff;
  --da-kpi-border: #0028500a;
  --da-kpi-bar-width: 4px;
  --da-badge-bg: #001e3c06;
  --da-badge-bar-width: 3px;
  --da-badge-bar-offset: 4px;
  --da-table-header-bg: #00838f05;
  --da-table-header-border: #0028500d;
  --da-table-row-hover: #00838f04;
  --da-table-border: #00285008;
  --da-table-head-color: #00838f;
  --da-input-bg: #f6f9fb;
  --da-input-border: #005a691f;
  --da-input-focus-border: #00838f;
  --da-input-focus-shadow: 0 0 0 3px #00838f1a;
  --da-btn-primary-bg: linear-gradient(135deg, #0891b2, #0d9488);
  --da-btn-primary-shadow: 0 6px 20px #0891b238;
  --da-radius-xs: 4px;
  --da-radius-sm: 6px;
  --da-radius-md: 8px;
  --da-radius-lg: 10px;
  --da-radius-xl: 14px;
  --da-radius-2xl: 18px;
  --da-radius-full: 9999px;
  --da-ease-out: cubic-bezier(.2, 0, 0, 1);
  --da-transition-fast: 80ms var(--da-ease-out);
  --da-transition-normal: .15s var(--da-ease-out);
  --da-transition-slow: .3s var(--da-ease-out);
  --da-focus-ring: 2px solid #00838f;
  --da-focus-ring-offset: 2px;
  --da-focus-shadow: 0 0 0 3px #00838f40;
  --da-font-sans: "DM Sans", system-ui, -apple-system, sans-serif;
  --da-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;
  --da-font-xs: 12px;
  --da-font-sm: 14px;
  --da-font-base: 15px;
  --da-font-md: 16px;
  --da-font-lg: 18px;
  --da-font-xl: 22px;
  --da-font-2xl: 28px;
  --da-font-3xl: 36px;
  --da-line-tight: 1.25;
  --da-line-base: 1.5;
  --da-line-relaxed: 1.65;
  --da-z-dropdown: 100;
  --da-z-sticky: 150;
  --da-z-sidebar: 200;
  --da-z-overlay: 250;
  --da-z-modal: 300;
  --da-z-toast: 500;
  --da-halo-cyan: #00838f0d;
  --da-halo-cobalt: #0e749008;
  --da-grid-color: #005a6906;
  --da-grid-size: 40px;
}

[data-theme="dark"] {
  --app-page-bg: linear-gradient(150deg, #0a1730 0%, #0a1024 55%, #070f22 100%);
  --da-auth-bg-gradient: linear-gradient(155deg, #0a1730 0%, #0a1024 55%, #070f22 100%);
  --da-auth-halo-tr: radial-gradient(ellipse at top right, #22d3ee29, transparent 55%);
  --da-auth-halo-bl: radial-gradient(ellipse at bottom left, #2563eb29, transparent 50%);
  --da-auth-halo-center: radial-gradient(circle, #67e8f924 0%, #22d3ee14 30%, transparent 60%);
  --da-text-primary: #ede9e0;
  --da-text-secondary: #b8b2a6;
  --da-text-tertiary: #8b887f;
  --da-text-muted: #6c6a63;
  --da-text-hint: #55524b;
  --da-text-disabled: #46433d;
  --da-text-inverse: #24211d;
  --da-bg-page: #0c1018;
  --da-bg-gradient: linear-gradient(150deg, #0c1018 0%, #0f1525 40%, #111b30 70%, #0e1520 100%);
  --da-surface: #0f172ae0;
  --da-surface-secondary: #0f172a99;
  --da-surface-hover: #ffffff08;
  --da-sidebar-bg: #0e1520;
  --da-sidebar-text: #fff6;
  --da-sidebar-text-active: #fff;
  --da-sidebar-active-bg: #00838f1a;
  --da-sidebar-border: #ffffff0f;
  --da-sidebar-brand: #4dc8f0bf;
  --da-border: #ffffff0f;
  --da-border-medium: #ffffff14;
  --da-border-hover: #ffffff24;
  --da-shadow-sm: 0 1px 3px #0003;
  --da-shadow-md: 0 4px 12px #00000040;
  --da-shadow-lg: 0 8px 24px #0000004d;
  --da-shadow-card: 0 2px 10px #0003;
  --da-focus-ring: 2px solid #2dd4bf;
  --da-focus-shadow: 0 0 0 3px #2dd4bf40;
  --da-kpi-bg: #0f172a99;
  --da-kpi-border: #ffffff0f;
  --da-badge-bg: #ffffff0f;
  --da-table-header-bg: #ffffff08;
  --da-table-border: #ffffff0a;
  --da-table-head-color: #2dd4bf;
  --da-input-bg: #0f172a99;
  --da-input-border: #ffffff1a;
  --da-input-focus-border: #2dd4bf;
  --da-halo-cyan: #00838f0a;
  --da-halo-cobalt: #0e749005;
  --da-grid-color: #ffffff05;
  --da-primary: #0ea5a9;
  --da-primary-soft: #0ea5a91f;
  --da-violet: #9f1239;
  --da-violet-text: #fda4af;
  --da-danger: #ef4444;
  --da-danger-text: #f87171;
  --da-warning: #f59e0b;
  --da-warning-text: #fbbf24;
  --da-success: #22b8cf;
  --da-success-text: #67e8f9;
  --da-surface-elevated: #111a2bf5;
  --da-auth-band-bg: linear-gradient(180deg, #0e1828 0%, #0c1422 100%);
  --da-auth-v3-card-bg: #111a2bf0;
  --da-auth-v3-card-shadow: 0 1px 0 #ffffff0a inset,
    0 0 0 .5px #2dd4bf2e,
    0 18px 40px -12px #00000080,
    0 60px 120px -24px #0009;
  --da-auth-v3-input-bg: #0f172a99;
  --da-auth-v3-input-border: 1.5px solid #2dd4bf4d;
  --da-auth-v3-input-border-focus: 1.5px solid #2dd4bf99;
  --da-auth-v3-input-shadow-focus: 0 1px 2px #0000004d, 0 0 0 4px #2dd4bf2e;
  --da-auth-v3-btn-secondary-bg: #0f172a8c;
  --da-auth-v3-btn-secondary-bg-hover: #141e32cc;
  --da-auth-v3-btn-secondary-bg-active: #19263ce6;
  --da-auth-v3-btn-secondary-color: #7dd3fc;
  --da-auth-v3-btn-secondary-border: 1.5px solid #2dd4bf4d;
  --da-auth-v3-btn-secondary-border-hover: #2dd4bf8c;
  --da-auth-v3-link-color: #7dd3fceb;
}

:root {
  --dt-accent-primary: var(--da-primary);
  --dt-text-primary: var(--da-text-primary);
  --dt-text-secondary: var(--da-text-secondary);
  --dt-text-muted: var(--da-text-muted);
  --dt-bg-primary: var(--da-bg-page);
  --dt-bg-surface: var(--da-surface);
  --dt-bg-surface-strong: var(--da-surface-elevated);
  --dt-border-soft: var(--da-border);
  --dt-border-soft-2: var(--da-border-hover);
  --dt-shadow-soft: var(--da-shadow-lg);
  --dt-radius-sm: var(--da-radius-md);
  --dt-radius-md: var(--da-radius-lg);
  --dt-radius-lg: var(--da-radius-xl);
}

/* [project]/styles/core/tokens-v2.css [app-client] (css) */
:root {
  --v2-page-1: #f7f8f8;
  --v2-page-2: #eff2f2;
  --v2-bg: linear-gradient(135deg, #f7f8f8 0%, #eff2f2 100%);
  --v2-surface: #fff;
  --v2-surface-2: #fbfcfc;
  --v2-sep: #e2e6e7;
  --v2-line: #eef1f2;
  --v2-hair: #cfd6d8;
  --v2-ink: #1f2426;
  --v2-ink-2: #454b4e;
  --v2-ink-3: #6b7275;
  --v2-ink-4: #9da6a9;
  --v2-marine-1: #0a1f3c;
  --v2-marine-2: #0f3850;
  --v2-marine-3: #114a63;
  --v2-hero: linear-gradient(120deg, #0a1f3c 0%, #0f3850 58%, #114a63 100%);
  --v2-teal: #0e7490;
  --v2-teal-d: #155e75;
  --v2-teal-l: #22b8cf;
  --v2-teal-grad: linear-gradient(135deg, #0e7490, #155e75);
  --v2-teal-08: #0e749014;
  --v2-perime: #5a1e3e;
  --v2-perime-bd: #e2c4d6;
  --v2-perime-15: #5a1e3e42;
  --v2-perime-16: #5a1e3e57;
  --v2-sous30: #a83248;
  --v2-sous30-bd: #e7bac4;
  --v2-sous30-15: #a8324830;
  --v2-sous30-16: #a832483d;
  --v2-ambre: #b45309;
  --v2-ambre-bd: #ead3b4;
  --v2-ambre-15: #b4530930;
  --v2-ambre-16: #b453093d;
  --v2-redis: #0f766e;
  --v2-redis-d: #115e59;
  --v2-redis-bd: #b7dad5;
  --v2-redis-15: #0f766e30;
  --v2-redis-16: #0f766e3d;
  --v2-redis-12: #0f766e24;
  --v2-redis-grad: linear-gradient(180deg, #0f766e, #115e59);
  --v2-surveil: #6d28a8;
  --v2-surveil-bd: #d8c2ec;
  --v2-surveil-15: #6d28a82e;
  --v2-surveil-16: #6d28a83d;
  --v2-sh-1: 0 1px 2px #141e370d, 0 8px 24px -18px #141e374d;
  --v2-sh-2: 0 1px 2px #141e370d, 0 12px 30px -20px #141e374d;
  --v2-sh-3: 0 2px 4px #141e370f, 0 32px 64px -32px #141e3773;
  --v2-inset: inset 0 1px 0 #ffffff2e;
  --v2-title: "Inter Tight", system-ui, -apple-system, sans-serif;
  --v2-body: "Inter", system-ui, -apple-system, sans-serif;
  --v2-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;
  --v2-r-chip: 8px;
  --v2-r-ctrl: 12px;
  --v2-r-card: 16px;
  --v2-r-hero: 22px;
  --v2-sp-1: 8px;
  --v2-sp-2: 12px;
  --v2-sp-3: 16px;
  --v2-sp-4: 24px;
}

/* [project]/styles/core/tokens_auth.css [app-client] (css) */
:root {
  --da-cyan-50: #e0f7fa;
  --da-cyan-100: #b2ebf2;
  --da-cyan-200: #80deea;
  --da-cyan-400: #26c6da;
  --da-cyan-500: #06b6d4;
  --da-cyan-600: #0891b2;
  --da-cyan-700: #0e7490;
  --da-cyan-800: #155e75;
  --da-cyan-900: #164e63;
  --da-blue-500: #2563eb;
  --da-blue-600: #1d4ed8;
  --da-blue-700: #1e40af;
  --da-blue-800: #1e3a8a;
  --da-blue-900: #0a1f4e;
  --da-text-primary: #0a1838;
  --da-text-body: #1e3a8a;
  --da-text-secondary: #3b5482;
  --da-text-muted: #6b7f9e;
  --da-text-on-dark: #f0f9ff;
  --da-marine: #0a1838;
  --da-marine-soft: #1e3a8a;
  --da-text-on-light: #0a1838;
  --da-text-tertiary: #6b7f9e;
  --da-gradient-brand: linear-gradient(135deg, #06b6d4 0%, #0891b2 50%, #1e40af 100%);
  --da-gradient-brand-dark: linear-gradient(135deg, #06b6d4 0%, #0891b2 50%, #2563eb 100%);
  --da-bg-light: linear-gradient(155deg, #1a4a5e 0%, #2a6878 50%, #1e5870 100%);
  --da-bg-light-radial: radial-gradient(ellipse at top right, #22d3ee38, transparent 55%),
    radial-gradient(ellipse at bottom left, #2563eb26, transparent 50%);
  --da-bg-admin: linear-gradient(155deg, #061628 0%, #0a3a52 50%, #0f4a68 100%);
  --da-bg-admin-radial: radial-gradient(ellipse at top right, #22d3ee47, transparent 55%),
    radial-gradient(ellipse at bottom left, #2563eb38, transparent 50%);
  --da-card-light-bg: #fffffff0;
  --da-card-light-blur: blur(20px);
  --da-card-light-shadow: 0 36px 88px #00283c57,
    0 0 0 1px #67e8f947;
  --da-card-dark-bg: #0f172ac7;
  --da-card-dark-blur: blur(24px);
  --da-card-dark-shadow: 0 36px 88px #0000008c,
    0 0 0 1px #67e8f952;
  --da-card-light-bg-solid: #fbfdfe;
  --da-card-dark-bg-solid: #0b1929;
  --da-header-bg-light: linear-gradient(180deg, #cffafe8c 0%, #cffafe2e 100%);
  --da-header-bg-dark: linear-gradient(180deg, #0891b22e 0%, #0f172a00 100%);
  --da-card-divider: 1px solid #0891b22e;
  --da-card-divider-dark: 1px solid #67e8f929;
  --da-card-divider-vertical: 1px solid #0891b238;
  --da-btn-shadow: 0 14px 32px #0891b26b,
    inset 0 1px 0 #ffffff38;
  --da-btn-hover-shadow: 0 18px 38px #0891b285,
    inset 0 1px 0 #ffffff47;
  --da-btn-secondary-bg: #ecfeff;
  --da-btn-secondary-bg-hover: #cffafe;
  --da-btn-secondary-border: 2px solid #0891b2;
  --da-btn-secondary-text: #0c4a6e;
  --da-btn-secondary-shadow: 0 4px 12px #0891b21f;
  --da-radius-card: 24px;
  --da-radius-card-mobile: 20px;
  --da-radius-elem: 14px;
  --da-radius-input: 14px;
  --da-radius-small: 10px;
  --da-focus-ring: 0 0 0 4px #0891b252;
  --da-focus-ring-offset: 2px;
  --da-focus-ring-error: 0 0 0 4px #dc26264d;
  --da-error-bg: #fee2e2a6;
  --da-error-border: #dc262652;
  --da-error-text: #b91c1c;
  --da-success-bg: #dcfce7a6;
  --da-success-border: #22c55e52;
  --da-success-text: #15803d;
  --da-warning-bg: #fef3c7a6;
  --da-warning-border: #f59e0b52;
  --da-warning-text: #b45309;
  --da-card-padding-h: 48px;
  --da-card-padding-v: 44px;
  --da-card-padding-h-mobile: 24px;
  --da-card-padding-v-mobile: 26px;
  --da-card-header-py: 30px;
  --da-card-header-py-mobile: 20px;
  --da-card-footer-py: 22px;
  --da-card-footer-py-mobile: 14px;
  --da-gap-intro-input: 46px;
  --da-gap-label-input: 14px;
  --da-gap-input-primary: 42px;
  --da-gap-primary-secondary: 28px;
  --da-gap-secondary-link: 46px;
  --da-gap-label-input-mobile: 10px;
  --da-gap-input-primary-mobile: 24px;
  --da-gap-primary-secondary-mobile: 14px;
  --da-gap-secondary-link-mobile: 24px;
  --da-logo-size: 88px;
  --da-logo-size-mobile: 60px;
  --da-logo-size-small: 50px;
  --da-z-card: 10;
  --da-z-toast: 100;
  --da-z-modal: 1000;
  --da-ease-out: cubic-bezier(.2, 0, 0, 1);
}

[data-theme="admin-dark"] {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
}

/* [project]/styles/core/typography_auth.css [app-client] (css) */
:root {
  --da-font-hero-title: clamp(34px, 5vw, 44px);
  --da-font-hero-subtitle: clamp(18px, 2.5vw, 22px);
  --da-font-h1: clamp(22px, 3vw, 28px);
  --da-font-h2: clamp(18px, 2.2vw, 22px);
  --da-font-h3: clamp(16px, 1.9vw, 19px);
  --da-font-intro: clamp(15px, 1.9vw, 18px);
  --da-font-body: clamp(15px, 1.7vw, 17px);
  --da-font-body-strong: clamp(15px, 1.8vw, 18px);
  --da-font-greeting: clamp(16px, 1.8vw, 18px);
  --da-font-input: clamp(17px, 2vw, 19px);
  --da-font-label: clamp(13px, 1.5vw, 15px);
  --da-font-helper: clamp(12px, 1.3vw, 13px);
  --da-font-checkbox: clamp(14px, 1.6vw, 16px);
  --da-font-button-primary: clamp(16px, 2vw, 18px);
  --da-font-button-secondary: clamp(15px, 1.8vw, 17px);
  --da-font-link: clamp(14px, 1.6vw, 16px);
  --da-font-eyebrow: clamp(11px, 1.2vw, 13px);
  --da-font-institution: clamp(16px, 1.8vw, 19px);
  --da-font-footer: clamp(12px, 1.3vw, 13px);
  --da-font-small: clamp(12px, 1.3vw, 14px);
  --da-font-micro: 11px;
  --da-fw-regular: 400;
  --da-fw-medium: 500;
  --da-fw-semibold: 600;
  --da-fw-bold: 700;
  --da-fw-extrabold: 800;
  --da-lh-tight: 1.15;
  --da-lh-snug: 1.3;
  --da-lh-normal: 1.45;
  --da-lh-relaxed: 1.55;
  --da-lh-loose: 1.7;
  --da-ls-tight: -.025em;
  --da-ls-snug: -.015em;
  --da-ls-normal: -.005em;
  --da-ls-default: 0em;
  --da-ls-wide: .06em;
  --da-ls-uppercase: .1em;
  --da-ls-extra-wide: .16em;
}

h1 {
  font-size: var(--da-font-h1);
  font-weight: var(--da-fw-bold);
  letter-spacing: var(--da-ls-snug);
  line-height: var(--da-lh-tight);
}

h2 {
  font-size: var(--da-font-h2);
  font-weight: var(--da-fw-semibold);
  letter-spacing: var(--da-ls-normal);
  line-height: var(--da-lh-snug);
}

h3 {
  font-size: var(--da-font-h3);
  font-weight: var(--da-fw-semibold);
  letter-spacing: var(--da-ls-normal);
  line-height: var(--da-lh-snug);
}

p {
  font-size: var(--da-font-body);
  font-weight: var(--da-fw-regular);
  line-height: var(--da-lh-relaxed);
}

label {
  font-size: var(--da-font-label);
  font-weight: var(--da-fw-semibold);
  letter-spacing: var(--da-ls-uppercase);
  line-height: var(--da-lh-normal);
}

@media (prefers-contrast: more) {
  :root {
    --da-fw-regular: 500;
    --da-fw-medium: 600;
    --da-fw-semibold: 700;
  }
}

/* [project]/styles/tokens_app.css [app-client] (css) */
:root {
  --rupture: #b91c1c;
  --rupture-bg: #fee2e2;
  --critical: #9f1239;
  --critical-bg: #fcf2f5;
  --urgent: #ea580c;
  --urgent-bg: #ffedd5;
  --watch: #c2700f;
  --watch-bg: #fef6e5;
  --ok: #0e7490;
  --ok-bg: #e6f6fa;
  --pill-state: #c2691c;
  --cyan-50: #ecfeff;
  --cyan-100: #cffafe;
  --cyan-500: #06b6d4;
  --cyan-600: #0891b2;
  --cyan-700: #0e7490;
  --cyan-800: #155e75;
  --ink: #24211d;
  --ink-2: #46433d;
  --ink-3: #6c6a63;
  --ink-4: #8b887f;
  --card-bg: #fff;
  --radius-card: 14px;
  --radius-card-lg: 18px;
  --shadow-card: 0 2px 8px -2px #141e3712,
    0 12px 28px -10px #141e371c,
    0 1px 2px #141e370a;
  --shadow-card-hover: 0 6px 16px -4px #141e371a,
    0 20px 42px -14px #141e3729,
    0 2px 4px #141e3712;
  --shadow-scan: 0 8px 20px -4px #0891b24d,
    0 2px 6px #0891b22e;
  --bg-page: #f7f8f8;
  --sidebar-grad: radial-gradient(110% 50% at 50% -5%, #2cc7de24, transparent 62%),
    linear-gradient(180deg, #123a58 0%, #0e2c45 52%, #0a2135 100%);
  --sidebar-text: #9fb6c6;
  --sidebar-text-strong: #eaf1f6;
  --sidebar-text-muted: #eaf1f68c;
  --sidebar-title: #eaf1f66b;
  --sidebar-border: #eaf1f61a;
  --sidebar-hover: #eaf1f612;
  --sidebar-active-bg: #2cc7de29;
  --sidebar-accent: #2cc7de;
}

/* [project]/styles/app.css [app-client] (css) */
:root {
  --bottom-nav-height: 58px;
}

.app-shell {
  background: radial-gradient(circle at 15% 10%, #0891b212, transparent 50%),
    radial-gradient(circle at 95% 85%, #0e74900f, transparent 60%),
    var(--hub-page-bg, linear-gradient(135deg, #f7f8f8 0%, #eff2f2 100%));
  min-height: 100dvh;
}

.app-shell > * {
  min-width: 0;
}

button, a[href], [role="button"], input[type="submit"], input[type="button"] {
  font-weight: 700;
}

.nav-backdrop {
  z-index: 75;
  background: #1c191573;
  animation: .2s navFade;
  position: fixed;
  inset: 0;
}

@keyframes navFade {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.nav-drawer {
  z-index: 80;
  visibility: hidden;
  width: 280px;
  max-width: 86vw;
  height: 100dvh;
  transition: transform .24s, visibility .24s;
  position: fixed;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  box-shadow: 0 24px 60px -10px #1c191580;
}

.nav-drawer.open {
  visibility: visible;
  transform: none;
}

.nav-close {
  cursor: pointer;
  width: 32px;
  height: 32px;
  color: var(--sidebar-text-muted, #cbd5e1);
  background: #ffffff1a;
  border: none;
  border-radius: 9px;
  flex: none;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.nav-close:hover {
  color: #fff;
  background: #ffffff2e;
}

.nav-toggle {
  cursor: pointer;
  width: 34px;
  height: 34px;
  color: var(--sidebar-text-muted, #cbd5e1);
  background: #ffffff1a;
  border: none;
  border-radius: 9px;
  flex: none;
  justify-content: center;
  align-items: center;
  transition: background .12s, color .12s;
  display: inline-flex;
}

.nav-toggle:hover {
  color: #fff;
  background: #ffffff2e;
}

.nav-toggle:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px #178da699;
}

@media (prefers-reduced-motion: reduce) {
  .nav-drawer {
    transition: none;
  }

  .nav-backdrop {
    animation: none;
  }
}

.nav-sidebar {
  display: none;
}

@media (min-width: 1024px) {
  .app-shell--docked {
    align-items: flex-start;
    display: flex;
  }

  .app-shell--docked .app-main {
    flex: 1;
    min-width: 0;
  }

  .nav-backdrop, .nav-drawer {
    display: none !important;
  }

  .nav-sidebar {
    z-index: 60;
    flex: none;
    width: 64px;
    height: 100dvh;
    margin: 0;
    transition: width .18s;
    display: block;
    position: sticky;
    top: 0;
  }

  .app-shell--navopen .nav-sidebar {
    width: 240px;
  }

  .nav-sidebar .navbar {
    border-right: 1px solid #1c19151a;
    width: 64px;
    height: 100dvh;
    transition: width .18s, box-shadow .18s;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden auto;
    box-shadow: 2px 0 18px #1c19150f;
  }

  .app-shell--navopen .nav-sidebar .navbar {
    width: 240px;
    box-shadow: 2px 0 18px #1c19151a;
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .navbar {
    padding: 20px var(--rail-pad);
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .navbar-header {
    flex-direction: column;
    gap: 12px;
    padding-bottom: 14px;
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .navbar-logo {
    flex: none;
    justify-content: center;
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .navbar-logo-txt, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-link span, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-link .badge, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-section-title, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-demobadge, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-hubmarker, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-hubtoggle, .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-subitems, .app-shell:not(.app-shell--navopen) .nav-sidebar .navbar-user > div {
    display: none;
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-link {
    justify-content: center;
    padding: 10px;
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .navbar-user {
    justify-content: center;
    padding: 12px 0 4px;
  }

  .app-shell:not(.app-shell--navopen) .nav-sidebar .nav-profileswitch {
    justify-content: center;
    padding: 10px 0;
  }
}

@media (min-width: 1024px) and (prefers-reduced-motion: reduce) {
  .nav-sidebar .navbar {
    transition: none;
  }
}

.app-main {
  width: 100%;
  min-width: 0;
  max-width: 1280px;
  margin: 0 auto;
  padding: 28px 32px 40px;
}

.app-main.app-main--bleed, .app-main.app-main--wide {
  max-width: none;
  padding: 0;
}

@media (max-width: 767px) {
  .app-main.app-main--bleed {
    height: 100dvh;
  }
}

@media (max-width: 520px) {
  .app-main.app-main--bleed {
    height: 100dvh;
    padding: 0;
  }
}

.navbar {
  --rail-pad: 12px;
  --rail-item-pad: 12px;
  background: var(--sidebar-grad);
  padding: 20px var(--rail-pad);
  flex-direction: column;
  gap: 18px;
  height: 100%;
  display: flex;
  overflow-y: auto;
}

.navbar-header {
  border-bottom: 1px solid var(--sidebar-border);
  align-items: center;
  gap: 10px;
  padding: 0 0 16px;
  display: flex;
}

.navbar-logo {
  flex: 1;
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.navbar-logo-txt {
  min-width: 0;
}

.navbar-logo-mark {
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  display: flex;
  overflow: hidden;
  box-shadow: 0 4px 12px -2px #141e3773;
}

.navbar-logo-mark img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.navbar-name {
  color: var(--sidebar-text-strong);
  letter-spacing: -.01em;
  font-family: Inter Tight, sans-serif;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.1;
}

.navbar-sub {
  color: var(--sidebar-text-muted);
  margin-top: 2px;
  font-size: 11px;
}

.nav-profileswitch {
  padding: 14px var(--rail-item-pad) 12px;
  border-bottom: 1px solid var(--sidebar-border);
  align-items: center;
  display: flex;
  position: relative;
}

.nav-profileavatar {
  cursor: pointer;
  color: #fff;
  background: linear-gradient(135deg, #178da6, #0f6b80);
  border: 1px solid #ffffff2e;
  border-radius: 50%;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-family: Inter Tight, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  transition: filter .12s;
  display: inline-flex;
  box-shadow: 0 6px 14px -6px #178da6b3;
}

.nav-profileavatar:hover {
  filter: brightness(1.08);
}

.nav-profilebtn {
  cursor: pointer;
  text-align: left;
  background: none;
  border: 0;
  border-radius: 10px;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 0;
  display: flex;
}

.nav-profilebtn:hover .nav-profileavatar {
  filter: brightness(1.08);
}

.nav-profilebtn:focus-visible {
  border-radius: 12px;
  outline: none;
  box-shadow: 0 0 0 3px #2cc7de8c;
}

.nav-profiletxt {
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  display: flex;
}

.nav-profilename {
  color: var(--sidebar-text, #cfe0ec);
  white-space: normal;
  font-family: Inter Tight, system-ui, sans-serif;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.18;
}

.nav-profilehint {
  color: var(--sidebar-text-muted);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 2px;
  font-size: 11px;
  line-height: 1.2;
  overflow: hidden;
}

.app-shell:not(.app-shell--navopen) .nav-sidebar .nav-profiletxt {
  display: none;
}

.nav-profilemenu {
  top: calc(100% - 4px);
  left: var(--rail-item-pad);
  z-index: 60;
  border: 1px solid var(--sidebar-border);
  background: linear-gradient(#123a58, #0e2c45);
  border-radius: 12px;
  flex-direction: column;
  gap: 2px;
  min-width: 208px;
  padding: 6px;
  display: flex;
  position: absolute;
  box-shadow: 0 18px 40px -12px #06121eb3;
}

.nav-profilemenu-hd {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--sidebar-text-muted);
  padding: 6px 8px 4px;
  font-family: JetBrains Mono, ui-monospace, monospace;
  font-size: 9.5px;
  font-weight: 700;
}

.nav-profilemenu-item {
  cursor: pointer;
  width: 100%;
  min-height: 44px;
  font: inherit;
  text-align: left;
  color: var(--sidebar-text, #cfe0ec);
  background: none;
  border: 1px solid #0000;
  border-radius: 9px;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  font-size: 13.5px;
  font-weight: 600;
  transition: background .12s, border-color .12s;
  display: flex;
}

.nav-profilemenu-item:hover {
  background: #ffffff14;
}

.nav-profilemenu-item:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px #2cc7de8c;
}

.nav-profilemenu-item:disabled {
  opacity: .6;
  cursor: progress;
}

.nav-profilemenu-item.active {
  background: var(--sidebar-active-bg, #2cc7de29);
  color: #fff;
  border-color: #2cc7de59;
  font-weight: 700;
}

.nav-profilemenu-ini {
  color: #fff;
  background: #ffffff1a;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 26px;
  height: 26px;
  font-family: Inter Tight, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  display: inline-flex;
}

.nav-profilemenu-item.active .nav-profilemenu-ini {
  background: linear-gradient(135deg, #178da6, #0f6b80);
  border-color: #0000;
}

.nav-profilemenu-lbl {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.nav-profilemenu-spin {
  color: var(--sidebar-text-muted);
  margin-left: auto;
}

.nav-demobadge {
  color: var(--sidebar-text, #cfe0ec);
  background: #ffffff0f;
  border: 1px solid #ffffff24;
  border-radius: 11px;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 11px 12px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.nav-demodot {
  background: #22d3ee;
  border-radius: 999px;
  flex: none;
  width: 8px;
  height: 8px;
}

.nav-demosub {
  color: var(--sidebar-text-muted);
  white-space: nowrap;
  margin-left: auto;
  font-size: 11px;
  font-weight: 500;
}

.nav-section {
  flex-direction: column;
  gap: 3px;
  display: flex;
}

.nav-section + .nav-section {
  margin-top: 6px;
}

.nav-section-title {
  color: var(--sidebar-title);
  text-transform: uppercase;
  letter-spacing: .09em;
  padding: 0 var(--rail-item-pad) 6px;
  font-size: 10px;
  font-weight: 700;
}

.nav-link {
  padding: 9px var(--rail-item-pad);
  color: var(--sidebar-text);
  cursor: pointer;
  border-radius: 10px;
  align-items: center;
  gap: 11px;
  font-size: 13.5px;
  font-weight: 700;
  text-decoration: none;
  transition: background .16s, color .16s, box-shadow .16s;
  display: flex;
}

.nav-link:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text-strong);
}

.nav-link.active {
  background: var(--sidebar-active-bg);
  color: var(--sidebar-text-strong);
  box-shadow: inset 2px 0 0 var(--sidebar-accent);
  font-weight: 700;
}

.nav-link svg {
  flex-shrink: 0;
  width: 17px;
  height: 17px;
}

.nav-link .badge {
  background: var(--rupture);
  color: #fff;
  letter-spacing: .02em;
  border-radius: 99px;
  margin-left: auto;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: 700;
}

.nav-hub {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.nav-hubmarker {
  opacity: .5;
  flex-shrink: 0;
  margin-left: auto;
}

.nav-link.active .nav-hubmarker {
  opacity: .8;
}

.nav-hubrow {
  align-items: stretch;
  gap: 2px;
  display: flex;
}

.nav-hubrow .nav-hublink {
  flex: 1;
  min-width: 0;
}

.nav-hubtoggle {
  cursor: pointer;
  width: 30px;
  color: var(--sidebar-text-muted);
  background: none;
  border: none;
  border-radius: 10px;
  flex: none;
  justify-content: center;
  align-items: center;
  transition: background .16s, color .16s;
  display: flex;
}

.nav-hubtoggle:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text-strong);
}

.nav-hubtoggle:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px #178da680;
}

.nav-subitems {
  border-left: 1px solid var(--sidebar-border);
  flex-direction: column;
  gap: 2px;
  margin: 2px 0 4px 17px;
  padding-left: 12px;
  display: flex;
}

.nav-subitem {
  color: var(--sidebar-text-muted);
  border-radius: 8px;
  align-items: center;
  padding: 7px 11px;
  font-size: 12.5px;
  font-weight: 700;
  text-decoration: none;
  transition: background .16s, color .16s, box-shadow .16s;
  display: flex;
}

.nav-subitem:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text-strong);
}

.nav-subitem.active {
  color: var(--sidebar-text-strong);
  background: var(--sidebar-active-bg);
  box-shadow: inset 2px 0 0 var(--sidebar-accent);
  font-weight: 700;
}

.navbar-user {
  border-top: 1px solid var(--sidebar-border);
  border-radius: 0;
  align-items: center;
  gap: 10px;
  margin-top: auto;
  padding: 12px 10px 4px;
  text-decoration: none;
  transition: background .16s;
  display: flex;
}

.navbar-user:hover {
  background: var(--sidebar-hover);
  border-radius: 10px;
}

.navbar-user-avatar {
  background: linear-gradient(135deg, #22d3ee, var(--cyan-700));
  color: #fff;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-size: 13px;
  font-weight: 700;
  display: flex;
  position: relative;
}

.navbar-user-avatar:after {
  content: "";
  background: #22b8cf;
  border: 2px solid #0a2135;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  position: absolute;
  bottom: -1px;
  right: -1px;
}

.who-name {
  color: var(--sidebar-text-strong);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.15;
}

.who-sub {
  color: var(--sidebar-text-muted);
  margin-top: 1px;
  font-size: 11px;
}

.topbar-mobile {
  z-index: 10;
  background: #fff;
  border-bottom: 1px solid #0891b21a;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  display: none;
  position: sticky;
  top: 0;
}

.topbar-icon {
  background: var(--cyan-50);
  width: 38px;
  height: 38px;
  color: var(--cyan-700);
  cursor: pointer;
  border: none;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  display: flex;
}

.topbar-icon svg {
  width: 18px;
  height: 18px;
}

.topbar-spacer {
  flex: 1;
}

.bottom-nav {
  padding: 6px 4px max(6px, env(safe-area-inset-bottom));
  z-index: 20;
  background: #fff;
  border-top: 1px solid #0891b21f;
  grid-template-columns: repeat(5, 1fr);
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
}

.bottom-nav-link {
  color: var(--ink-3);
  cursor: pointer;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 6px 4px;
  font-size: 10px;
  font-weight: 700;
  text-decoration: none;
  display: flex;
}

.bottom-nav-link svg {
  width: 20px;
  height: 20px;
}

.bottom-nav-link.active {
  color: var(--cyan-700);
}

.hero {
  background: linear-gradient(135deg, var(--cyan-600) 0%, var(--cyan-800) 100%);
  border-radius: var(--radius-card-lg);
  color: #fff;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 32px;
  margin-bottom: 24px;
  padding: 24px 32px;
  display: grid;
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 28px -10px #141e3740, inset 0 1px #ffffff2e;
}

.hero:before {
  content: "";
  pointer-events: none;
  background: linear-gradient(#0000, #ffffff38 20% 80%, #0000);
  width: 1px;
  position: absolute;
  top: 28px;
  bottom: 28px;
  left: 50%;
}

.hero-left {
  z-index: 2;
  position: relative;
}

.hero h1 {
  letter-spacing: -.015em;
  margin: 0 0 5px;
  font-family: Inter Tight, sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
}

.hero h1 .name {
  opacity: .95;
  font-weight: 600;
}

.hero-sub {
  opacity: .88;
  margin: 0 0 10px;
  font-size: 14px;
}

.sync-sap {
  z-index: 2;
  cursor: pointer;
  -webkit-backdrop-filter: blur(6px);
  background: #ffffff1a;
  border: 1px solid #ffffff2e;
  border-radius: 99px;
  align-items: center;
  gap: 10px;
  margin-top: 4px;
  padding: 7px 8px 7px 12px;
  text-decoration: none;
  transition: background .16s, border-color .16s;
  display: inline-flex;
  position: relative;
}

.sync-sap:hover {
  background: #ffffff2e;
  border-color: #ffffff47;
}

.sync-sap:active .sync-sap-refresh {
  animation: .6s cubic-bezier(.4, 0, .2, 1) spin;
}

.sync-sap-dot {
  background: #22d3ee;
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  animation: 2s ease-in-out infinite pulse-dot;
  box-shadow: 0 0 0 3px #22d3ee33;
}

@keyframes pulse-dot {
  0%, 100% {
    box-shadow: 0 0 0 3px #22d3ee33;
  }

  50% {
    box-shadow: 0 0 0 6px #22d3ee14;
  }
}

.sync-sap-label {
  color: #fff;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.sync-sap-sep {
  background: #ffffff38;
  width: 1px;
  height: 12px;
  margin: 0 2px;
}

.sync-sap-time {
  color: #ffffffc7;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
}

.sync-sap-refresh {
  color: #fff;
  background: #ffffff24;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  transition: background .16s;
  display: flex;
}

.sync-sap:hover .sync-sap-refresh {
  background: #ffffff3d;
}

.sync-sap-refresh svg {
  width: 12px;
  height: 12px;
}

.sync-sap.stale .sync-sap-dot {
  background: #fbbf24;
  box-shadow: 0 0 0 3px #fbbf2433;
}

.sync-sap.stale {
  background: #c2700f33;
  border-color: #fed7aa4d;
}

.sync-sap.error .sync-sap-dot {
  background: #fca5a5;
  animation: none;
  box-shadow: 0 0 0 3px #fca5a533;
}

.sync-sap.error {
  background: #7f1d1d4d;
  border-color: #fecaca59;
}

@keyframes spin {
  from {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

.hero-visual {
  z-index: 2;
  cursor: pointer;
  align-items: center;
  gap: 22px;
  width: 100%;
  display: flex;
  position: relative;
}

.hero-visual-text {
  flex-direction: column;
  flex: 1;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.hero-visual-eyebrow {
  color: #ffffffbf;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 10.5px;
  font-weight: 600;
}

.hero-visual-label {
  color: #fff;
  letter-spacing: -.02em;
  font-family: Inter Tight, sans-serif;
  font-size: 24px;
  font-weight: 800;
  line-height: 1;
}

.hero-visual-sub {
  color: #ffffffd9;
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.4;
}

.hero-visual-trend {
  color: #ffffffd9;
  margin-top: 4px;
  font-size: 12.5px;
}

.hero-visual-trend .up {
  color: #a5f3fc;
  font-weight: 700;
}

.weather-big-icon {
  color: #fff;
  background: #ffffff24;
  border: 1px solid #fff3;
  border-radius: 18px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  display: flex;
}

.weather-big-icon svg {
  width: 56px;
  height: 56px;
}

.sql-big-gauge {
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  position: relative;
}

.sql-big-gauge svg {
  width: 100%;
  height: 100%;
}

.sql-big-center {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0;
}

.sql-big-score {
  color: #fff;
  letter-spacing: -.025em;
  font-family: Inter Tight, sans-serif;
  font-size: 30px;
  font-weight: 800;
  line-height: 1;
}

.sql-big-grade {
  color: #ffffffd9;
  background: #fff3;
  border-radius: 99px;
  margin-top: 3px;
  padding: 1px 8px;
  font-family: Inter Tight, sans-serif;
  font-size: 11px;
  font-weight: 700;
}

.fieldset {
  border-radius: var(--radius-card-lg);
  -webkit-backdrop-filter: blur(4px);
  background: linear-gradient(135deg, #cffafe73 0%, #bae6fd4d 100%);
  border: 1.5px solid #0891b238;
  margin-bottom: 22px;
  padding: 28px 22px 22px;
  position: relative;
}

.fieldset-title {
  background: var(--cyan-800);
  color: #fff;
  letter-spacing: .1em;
  text-transform: uppercase;
  z-index: 2;
  border-radius: 99px;
  padding: 5px 14px;
  font-family: Inter Tight, sans-serif;
  font-size: 11px;
  font-weight: 700;
  position: absolute;
  top: 0;
  left: 22px;
  transform: translateY(-50%);
  box-shadow: 0 4px 12px -3px #141e3733;
}

.fieldset-count {
  color: #fff;
  letter-spacing: 0;
  background: #fff3;
  border-radius: 99px;
  margin-left: 6px;
  padding: 1px 8px;
  font-weight: 700;
}

.fieldset.state-fieldset {
  -webkit-backdrop-filter: none;
  isolation: isolate;
  background: #f6f1e8;
  border: none;
}

.fieldset.state-fieldset:after {
  content: "";
  border-radius: inherit;
  background: linear-gradient(135deg, var(--rupture) 0%, var(--urgent) 50%, var(--watch) 100%);
  -webkit-mask-composite: xor;
  pointer-events: none;
  z-index: 0;
  padding: 3px;
  position: absolute;
  inset: 0;
  -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
  -webkit-mask-position: 0 0, 0 0;
  -webkit-mask-size: auto, auto;
  -webkit-mask-repeat: repeat, repeat;
  -webkit-mask-clip: content-box, border-box;
  -webkit-mask-origin: content-box, border-box;
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  -webkit-mask-source-type: auto, auto;
  mask-mode: match-source, match-source;
}

.fieldset.state-fieldset.cadre:after {
  background: linear-gradient(135deg, var(--rupture) 0%, var(--watch) 50%, var(--ok) 100%);
}

.fieldset.state-fieldset > .fieldset-title {
  background: var(--pill-state);
  box-shadow: 0 4px 12px -3px #c2691c66;
}

.fieldset.action-fieldset {
  -webkit-backdrop-filter: none;
  isolation: isolate;
  background: #fff;
  border: none;
}

.fieldset.action-fieldset:after {
  content: "";
  border-radius: inherit;
  background: linear-gradient(135deg, var(--cyan-600) 0%, var(--cyan-700) 50%, var(--cyan-800) 100%);
  -webkit-mask-composite: xor;
  pointer-events: none;
  z-index: 0;
  padding: 3px;
  position: absolute;
  inset: 0;
  -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
  -webkit-mask-position: 0 0, 0 0;
  -webkit-mask-size: auto, auto;
  -webkit-mask-repeat: repeat, repeat;
  -webkit-mask-clip: content-box, border-box;
  -webkit-mask-origin: content-box, border-box;
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  -webkit-mask-source-type: auto, auto;
  mask-mode: match-source, match-source;
}

.fieldset.action-fieldset > .fieldset-title {
  background: var(--cyan-800);
  box-shadow: 0 4px 12px -3px #155e7566;
}

.state-grid {
  z-index: 1;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  display: grid;
  position: relative;
}

.state-card {
  background: var(--card-bg);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  cursor: pointer;
  border: 1px solid #0891b21a;
  grid-template-columns: 48px 1fr;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  text-decoration: none;
  transition: transform .2s cubic-bezier(.34, 1.3, .64, 1), box-shadow .2s, border-color .16s;
  display: grid;
  position: relative;
}

.state-card:hover {
  box-shadow: var(--shadow-card-hover);
  border-color: #0891b233;
  transform: translateY(-2px);
}

.state-card.rupture {
  background: linear-gradient(135deg, var(--rupture-bg) 0%, #fff 70%);
}

.state-card.urgent {
  background: linear-gradient(135deg, var(--urgent-bg) 0%, #fff 70%);
}

.state-card.watch {
  background: linear-gradient(135deg, var(--watch-bg) 0%, #fff 70%);
}

.state-card.ok {
  background: linear-gradient(135deg, var(--ok-bg) 0%, #fff 70%);
}

.state-card.critical {
  background: linear-gradient(135deg, var(--critical-bg) 0%, #fff 70%);
}

.state-icon {
  background: var(--cyan-50);
  width: 48px;
  height: 48px;
  color: var(--cyan-700);
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  display: flex;
}

.state-icon svg {
  width: 26px;
  height: 26px;
}

.state-card.rupture .state-icon {
  background: var(--rupture-bg);
  color: var(--rupture);
}

.state-card.critical .state-icon {
  background: var(--critical-bg);
  color: var(--critical);
}

.state-card.urgent .state-icon {
  background: var(--urgent-bg);
  color: var(--urgent);
}

.state-card.watch .state-icon {
  background: var(--watch-bg);
  color: var(--watch);
}

.state-card.ok .state-icon {
  background: var(--ok-bg);
  color: var(--ok);
}

.state-value {
  letter-spacing: -.025em;
  color: var(--ink);
  margin-bottom: 3px;
  font-family: Inter Tight, sans-serif;
  font-size: 36px;
  font-weight: 800;
  line-height: 1;
}

.state-card.rupture .state-value {
  color: var(--rupture);
}

.state-card.urgent .state-value {
  color: var(--urgent);
}

.state-card.watch .state-value {
  color: #92400e;
}

.state-card.ok .state-value {
  color: #155e75;
}

.state-card.critical .state-value {
  color: var(--critical);
}

.state-label {
  color: var(--ink-3);
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.3;
}

.state-sub {
  color: var(--ink-4);
  margin-top: 2px;
  font-size: 11px;
}

.actions-grid {
  z-index: 1;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  display: grid;
  position: relative;
}

.action-card {
  background: var(--card-bg);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  cursor: pointer;
  border: 1px solid #0891b21f;
  padding: 18px 20px 18px 26px;
  text-decoration: none;
  transition: transform .2s cubic-bezier(.34, 1.3, .64, 1), box-shadow .2s, border-color .16s;
  position: relative;
}

.action-card:before {
  content: "";
  background: var(--cyan-500);
  pointer-events: none;
  border-radius: 2px;
  width: 4px;
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 10px;
}

.action-card:hover {
  box-shadow: var(--shadow-card-hover);
  border-color: #0891b233;
  transform: translateY(-3px);
}

.action-card.rupture:before {
  background: var(--rupture);
}

.action-card.alert:before {
  background: var(--urgent);
}

.action-card.signal:before {
  background: var(--watch);
}

.action-card.scan {
  background: linear-gradient(135deg, var(--cyan-600), var(--cyan-800));
  color: #fff;
  box-shadow: var(--shadow-scan);
  border: none;
}

.action-card.scan:before {
  display: none;
}

.action-card.scan .action-icon {
  color: #fff;
  background: #fff3;
}

.action-card.scan .action-title {
  color: #fff;
}

.action-card.scan .action-sub {
  color: #ffffffd9;
}

.action-head {
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  display: flex;
}

.action-icon {
  background: var(--cyan-50);
  width: 38px;
  height: 38px;
  color: var(--cyan-700);
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.action-icon svg {
  width: 20px;
  height: 20px;
}

.action-card.alert .action-icon {
  background: var(--urgent-bg);
  color: var(--urgent);
}

.action-card.signal .action-icon {
  background: var(--watch-bg);
  color: var(--watch);
}

.action-pill {
  background: var(--rupture);
  color: #fff;
  letter-spacing: .02em;
  border-radius: 99px;
  margin-left: auto;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: 700;
}

.action-title {
  color: var(--ink);
  letter-spacing: -.01em;
  margin-bottom: 4px;
  font-family: Inter Tight, sans-serif;
  font-size: 14.5px;
  font-weight: 700;
}

.action-sub {
  color: var(--ink-3);
  font-size: 12px;
  line-height: 1.4;
}

@media (max-width: 1023px) and (min-width: 521px) {
  .app-main {
    padding: 24px 22px;
  }

  .actions-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .hero {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .hero:before {
    display: none;
  }
}

@media (max-width: 520px) {
  .app-main {
    padding: 16px 14px;
  }

  .hero {
    border-radius: 14px;
    gap: 12px;
    margin-bottom: 12px;
    padding: 14px;
  }

  .hero h1 {
    margin: 0;
    font-size: 20px;
  }

  .hero-sub {
    margin: 0 0 4px;
    font-size: 12px;
  }

  .sync-sap {
    gap: 7px;
    padding: 5px 6px 5px 10px;
  }

  .sync-sap-dot {
    width: 7px;
    height: 7px;
  }

  .sync-sap-label {
    letter-spacing: .04em;
    font-size: 10px;
  }

  .sync-sap-sep {
    height: 10px;
  }

  .sync-sap-time {
    font-size: 10px;
  }

  .sync-sap-refresh {
    width: 18px;
    height: 18px;
  }

  .sync-sap-refresh svg {
    width: 10px;
    height: 10px;
  }

  .hero-visual {
    gap: 14px;
  }

  .weather-big-icon {
    border-radius: 14px;
    width: 60px;
    height: 60px;
  }

  .weather-big-icon svg {
    width: 42px;
    height: 42px;
  }

  .sql-big-gauge {
    width: 80px;
    height: 80px;
  }

  .sql-big-score {
    font-size: 24px;
  }

  .sql-big-grade {
    padding: 1px 6px;
    font-size: 10px;
  }

  .hero-visual-eyebrow {
    font-size: 9.5px;
  }

  .hero-visual-label {
    font-size: 20px;
  }

  .hero-visual-sub, .hero-visual-trend {
    font-size: 11px;
  }

  .fieldset {
    border-radius: 14px;
    margin-bottom: 14px;
    padding: 24px 14px 16px;
  }

  .fieldset-title {
    padding: 4px 11px;
    font-size: 10px;
    left: 16px;
  }

  .state-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .state-card {
    gap: 12px;
    padding: 12px 14px;
  }

  .state-icon {
    width: 40px;
    height: 40px;
  }

  .state-icon svg {
    width: 22px;
    height: 22px;
  }

  .state-value {
    font-size: 28px;
  }

  .state-label {
    font-size: 12px;
  }

  .state-sub {
    font-size: 10.5px;
  }

  .actions-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .action-card {
    padding: 14px 14px 14px 22px;
  }

  .action-card:before {
    width: 3px;
    top: 10px;
    bottom: 10px;
    left: 8px;
  }

  .action-icon {
    width: 32px;
    height: 32px;
  }

  .action-icon svg {
    width: 16px;
    height: 16px;
  }

  .action-title {
    font-size: 13px;
  }

  .action-sub {
    font-size: 11px;
  }
}

.split-row {
  grid-template-columns: 1.4fr 1fr;
  gap: 14px;
  margin-top: 14px;
  display: grid;
}

.split-row > .fieldset {
  margin-top: 0;
}

@media (max-width: 900px) {
  .split-row {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.sql-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.sql-list {
  z-index: 1;
  flex-direction: column;
  gap: 12px;
  display: flex;
  position: relative;
}

.sql-axis {
  background: #fff;
  border: 1px solid #0891b21a;
  border-radius: 10px;
  padding: 10px 14px;
  box-shadow: 0 2px 6px -2px #141e370d;
}

.sql-axis-head {
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 6px;
  display: flex;
}

.sql-axis-name {
  color: var(--ink);
  letter-spacing: -.01em;
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.sql-axis-score {
  color: var(--ink);
  font-family: Inter Tight, sans-serif;
  font-size: 16px;
  font-weight: 800;
}

.sql-axis-bar {
  background: #0891b214;
  border-radius: 3px;
  height: 6px;
  overflow: hidden;
}

.sql-axis-fill {
  border-radius: 3px;
  height: 100%;
  transition: width .6s cubic-bezier(.34, 1.3, .64, 1);
}

.sql-axis-fill.ok {
  background: linear-gradient(90deg, #22d3ee 0%, #0e7490 100%);
}

.sql-axis-fill.watch {
  background: linear-gradient(90deg, #fbbf24 0%, #c2700f 100%);
}

.sql-axis-fill.urgent {
  background: linear-gradient(90deg, #fb923c 0%, #ea580c 100%);
}

.reappros-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.reappros-list {
  z-index: 1;
  flex-direction: column;
  gap: 8px;
  display: flex;
  position: relative;
}

.reappros-row {
  background: #fff;
  border: 1px solid #0891b214;
  border-radius: 9px;
  grid-template-columns: 12px 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  display: grid;
}

.reappros-dot {
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.reappros-row.pending .reappros-dot {
  background: var(--watch);
}

.reappros-row.sent .reappros-dot {
  background: var(--cyan-600);
}

.reappros-row.received .reappros-dot {
  background: var(--ok);
}

.reappros-content {
  min-width: 0;
}

.reappros-dm {
  color: var(--ink);
  letter-spacing: -.01em;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: 2px;
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 700;
  overflow: hidden;
}

.reappros-meta {
  color: var(--ink-3);
  flex-wrap: wrap;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.reappros-sep {
  color: var(--ink-4);
}

.reappros-status {
  font-weight: 600;
}

.reappros-row.pending .reappros-status {
  color: #c2700f;
}

.reappros-row.sent .reappros-status {
  color: var(--cyan-700);
}

.reappros-row.received .reappros-status {
  color: var(--ok);
}

.reappros-time {
  color: var(--ink-4);
  white-space: nowrap;
  font-size: 11px;
  font-weight: 500;
}

.commandes-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.commandes-list {
  z-index: 1;
  flex-direction: column;
  gap: 8px;
  display: flex;
  position: relative;
}

.commandes-row {
  background: #fff;
  border: 1px solid #0891b214;
  border-radius: 9px;
  grid-template-columns: 12px 1fr;
  gap: 10px;
  padding: 10px 12px;
  display: grid;
}

.commandes-dot {
  border-radius: 50%;
  width: 8px;
  height: 8px;
  margin-top: 4px;
}

.commandes-row.attente .commandes-dot {
  background: var(--watch);
}

.commandes-row.envoyee .commandes-dot {
  background: var(--cyan-600);
}

.commandes-row.livraison .commandes-dot {
  background: var(--ok);
}

.commandes-content {
  min-width: 0;
}

.commandes-head {
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 2px;
  display: flex;
}

.commandes-ref {
  color: var(--ink);
  letter-spacing: -.01em;
  font-family: Inter Tight, sans-serif;
  font-size: 12.5px;
  font-weight: 700;
}

.commandes-amount {
  color: var(--ink);
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 800;
}

.commandes-meta {
  color: var(--ink-3);
  flex-wrap: wrap;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.commandes-sep {
  color: var(--ink-4);
}

.commandes-status {
  font-weight: 600;
}

.commandes-row.attente .commandes-status {
  color: #c2700f;
}

.commandes-row.envoyee .commandes-status {
  color: var(--cyan-700);
}

.commandes-row.livraison .commandes-status {
  color: var(--ok);
}

.commandes-eta {
  color: var(--cyan-700);
  font-weight: 600;
}

.agenda-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.agenda-list {
  z-index: 1;
  flex-direction: column;
  gap: 8px;
  display: flex;
  position: relative;
}

.agenda-row {
  background: #fff;
  border: 1px solid #0891b214;
  border-radius: 9px;
  grid-template-columns: 56px 10px 1fr;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  display: grid;
}

.agenda-time {
  color: var(--ink);
  letter-spacing: -.01em;
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 800;
}

.agenda-dot {
  border-radius: 50%;
  width: 8px;
  height: 8px;
  margin: 0 auto;
}

.agenda-row.done .agenda-dot {
  background: var(--ink-4);
}

.agenda-row.now .agenda-dot {
  background: var(--ok);
  box-shadow: 0 0 0 4px #0e749026;
}

.agenda-row.next .agenda-dot {
  background: var(--cyan-600);
}

.agenda-row.later .agenda-dot {
  background: var(--ink-5, #d3cfc4);
}

.agenda-content {
  min-width: 0;
}

.agenda-title {
  color: var(--ink);
  letter-spacing: -.01em;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: 2px;
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 700;
  overflow: hidden;
}

.agenda-meta {
  color: var(--ink-3);
  flex-wrap: wrap;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.agenda-sep {
  color: var(--ink-4);
}

.agenda-status {
  font-weight: 600;
}

.agenda-row.done .agenda-status {
  color: var(--ink-4);
}

.agenda-row.now .agenda-status {
  color: var(--ok);
}

.agenda-row.next .agenda-status {
  color: var(--cyan-700);
}

.agenda-row.later .agenda-status {
  color: var(--ink-4);
}

.agenda-row.done .agenda-title {
  color: var(--ink-3);
}

.row-3 {
  grid-template-columns: 2fr 1fr;
  align-items: stretch;
  gap: 14px;
  margin-top: 14px;
  display: grid;
}

.row-3 > .fieldset {
  flex-direction: column;
  margin-top: 0;
  display: flex;
}

@media (max-width: 900px) {
  .row-3 {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.action-grid-2x2 {
  z-index: 1;
  flex: 1;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
  position: relative;
}

.action-grid-2x2 .action-card {
  background: var(--card-bg);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  color: var(--ink);
  cursor: pointer;
  text-align: left;
  border: 1px solid #0891b21f;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 18px 16px 22px;
  font-family: inherit;
  text-decoration: none;
  transition: transform .2s cubic-bezier(.34, 1.3, .64, 1), box-shadow .2s, border-color .16s;
  display: flex;
  position: relative;
}

.action-grid-2x2 .action-card:hover {
  box-shadow: var(--shadow-card-hover);
  border-color: #0891b233;
  transform: translateY(-3px);
}

.action-grid-2x2 .action-card .action-icon {
  background: var(--cyan-50);
  width: 38px;
  height: 38px;
  color: var(--cyan-700);
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.action-grid-2x2 .action-card .action-icon svg {
  width: 20px;
  height: 20px;
}

.action-grid-2x2 .action-content {
  flex: 1;
  min-width: 0;
  padding-top: 2px;
}

.action-grid-2x2 .action-card-label {
  color: var(--ink);
  letter-spacing: -.01em;
  margin-bottom: 3px;
  font-family: Inter Tight, sans-serif;
  font-size: 14px;
  font-weight: 700;
}

.action-grid-2x2 .action-card-sub {
  color: var(--ink-3);
  font-size: 11.5px;
  line-height: 1.35;
}

.action-grid-2x2 .action-badge {
  background: var(--rupture);
  color: #fff;
  border-radius: 10px;
  padding: 2px 8px;
  font-family: Inter Tight, sans-serif;
  font-size: 11px;
  font-weight: 800;
  position: absolute;
  top: 12px;
  right: 12px;
}

.action-grid-2x2 .action-badge.watch {
  background: var(--watch);
}

.action-grid-2x2 .action-badge.ok {
  background: var(--ok);
}

.action-grid-2x2 .action-badge.cyan {
  background: var(--cyan-700);
}

.graph-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.graph-tabs {
  z-index: 1;
  background: #0891b20f;
  border-radius: 10px;
  gap: 4px;
  margin-bottom: 12px;
  padding: 4px;
  display: flex;
  position: relative;
}

.graph-tab {
  color: var(--ink-3);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 7px;
  flex: 1;
  padding: 8px 12px;
  font-family: Inter Tight, sans-serif;
  font-size: 12px;
  font-weight: 700;
  transition: all .18s;
}

.graph-tab:hover {
  color: var(--ink);
}

.graph-tab.active {
  color: var(--cyan-800);
  background: #fff;
  box-shadow: 0 1px 3px #141e371a;
}

.graph-panel {
  z-index: 1;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.radar-svg, .donut-svg {
  width: 100%;
  max-width: 280px;
  height: auto;
}

.graph-summary {
  text-align: center;
  margin-top: 4px;
}

.graph-summary-score {
  color: var(--ink);
  font-family: Inter Tight, sans-serif;
  font-size: 30px;
  font-weight: 800;
  line-height: 1;
}

.graph-summary-label {
  color: var(--cyan-700);
  letter-spacing: .08em;
  margin-top: 4px;
  font-size: 10px;
  font-weight: 700;
}

.graph-summary-sub {
  color: var(--ok);
  margin-top: 2px;
  font-size: 11px;
  font-weight: 600;
}

.donut-legend {
  flex-direction: column;
  gap: 6px;
  width: 100%;
  max-width: 220px;
  margin-top: 8px;
  display: flex;
}

.donut-legend-item {
  color: var(--ink-2);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  display: flex;
}

.donut-legend-item .dot {
  border-radius: 2px;
  width: 9px;
  height: 9px;
}

.donut-legend-item .dot.ok {
  background: #0e7490;
}

.donut-legend-item .dot.watch {
  background: #c2700f;
}

.donut-legend-item .dot.rupture {
  background: #b91c1c;
}

.donut-legend-item b {
  color: var(--ink);
  margin-left: auto;
  font-family: Inter Tight, sans-serif;
  font-weight: 800;
}

.activity-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.activity-list {
  z-index: 1;
  flex-direction: column;
  gap: 6px;
  display: flex;
  position: relative;
}

.activity-row {
  background: #fff;
  border: 1px solid #0891b214;
  border-radius: 9px;
  grid-template-columns: 56px 10px 1fr;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  display: grid;
}

.activity-time {
  color: var(--ink-3);
  font-family: Inter Tight, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.activity-dot {
  border-radius: 50%;
  width: 8px;
  height: 8px;
  margin: 0 auto;
}

.activity-row.ok .activity-dot {
  background: var(--ok);
}

.activity-row.received .activity-dot {
  background: var(--cyan-600);
}

.activity-row.rupture .activity-dot {
  background: var(--rupture);
}

.activity-row.signal .activity-dot {
  background: var(--watch);
}

.activity-title {
  color: var(--ink);
  letter-spacing: -.01em;
  margin-bottom: 2px;
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.activity-meta {
  color: var(--ink-3);
  font-size: 11px;
}

.priorities-fieldset .fieldset-title {
  background: var(--cyan-800);
}

.priorities-list {
  z-index: 1;
  flex-direction: column;
  gap: 6px;
  display: flex;
  position: relative;
}

.priorities-row {
  background: #fff;
  border: 1px solid #0891b214;
  border-radius: 9px;
  grid-template-columns: 56px 10px 1fr;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  display: grid;
}

.priorities-time {
  color: var(--ink-3);
  font-family: Inter Tight, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.priorities-dot {
  border-radius: 50%;
  width: 8px;
  height: 8px;
  margin: 0 auto;
}

.priorities-row.urgent .priorities-dot {
  background: var(--rupture);
  box-shadow: 0 0 0 3px #b91c1c1f;
}

.priorities-row.soon .priorities-dot {
  background: var(--watch);
}

.priorities-row.normal .priorities-dot {
  background: var(--cyan-600);
}

.priorities-row.done .priorities-dot {
  background: var(--ink-4);
}

.priorities-row.done .priorities-title {
  color: var(--ink-3);
  text-decoration: line-through;
}

.priorities-title {
  color: var(--ink);
  letter-spacing: -.01em;
  margin-bottom: 2px;
  font-family: Inter Tight, sans-serif;
  font-size: 13px;
  font-weight: 700;
}

.priorities-meta {
  color: var(--ink-3);
  font-size: 11px;
}

.mtopbar {
  display: none;
}

.mtopbar-brand {
  align-items: center;
  gap: 9px;
  min-width: 0;
  display: flex;
}

.mtopbar-logo {
  border-radius: 8px;
  flex: none;
  place-items: center;
  width: 28px;
  height: 28px;
  display: grid;
  overflow: hidden;
  box-shadow: 0 3px 10px -2px #141e3766;
}

.mtopbar-logo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.mtopbar-title {
  color: #eaf1f6;
  letter-spacing: -.01em;
  white-space: nowrap;
  font-family: Inter Tight, system-ui, sans-serif;
  font-size: 15px;
  font-weight: 800;
}

.mtopbar-actions {
  align-items: center;
  gap: 6px;
  margin-left: auto;
  display: flex;
}

.mtopbar-act {
  color: #eaf1f6;
  cursor: pointer;
  background: #ffffff1f;
  border: 1px solid #eaf1f638;
  border-radius: 10px;
  place-items: center;
  width: 36px;
  height: 36px;
  transition: background .12s, color .12s;
  display: grid;
  position: relative;
}

.mtopbar-act:hover {
  color: #fff;
  background: #fff3;
}

.mtopbar-act svg {
  width: 17px;
  height: 17px;
}

.mtopbar-spin {
  animation: 1s linear infinite mtopbar-spin;
}

@keyframes mtopbar-spin {
  to {
    transform: rotate(360deg);
  }
}

.mtopbar-dot {
  color: #fff;
  background: #e11d48;
  border-radius: 999px;
  place-items: center;
  min-width: 15px;
  height: 15px;
  padding: 0 3px;
  font-family: JetBrains Mono, ui-monospace, monospace;
  font-size: 9px;
  font-weight: 700;
  display: grid;
  position: absolute;
  top: -4px;
  right: -4px;
}

.mtopbar-dot-amber {
  background: #b45309;
  animation: 3.4s ease-in-out infinite mtHaloAmber;
}

.mtopbar-dot-teal {
  background: #0a5f6e;
  animation: 3.4s ease-in-out infinite mtHaloTeal;
}

.mtopbar-dot-bordeaux {
  background: #7d0e2d;
  animation: 3.4s ease-in-out infinite mtHaloBordeaux;
}

.mtopbar-dot-agenda {
  background: #5b534a;
}

@keyframes mtHaloAmber {
  0%, 100% {
    box-shadow: 0 0 #b4530961;
  }

  50% {
    box-shadow: 0 0 0 5px #b4530900;
  }
}

@keyframes mtHaloTeal {
  0%, 100% {
    box-shadow: 0 0 #0a5f6e61;
  }

  50% {
    box-shadow: 0 0 0 5px #0a5f6e00;
  }
}

@keyframes mtHaloBordeaux {
  0%, 100% {
    box-shadow: 0 0 #7d0e2d61;
  }

  50% {
    box-shadow: 0 0 0 5px #7d0e2d00;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mtopbar-dot-amber, .mtopbar-dot-teal, .mtopbar-dot-bordeaux {
    animation: none;
  }
}

@media (max-width: 1023px) {
  .mtopbar {
    z-index: 60;
    background: linear-gradient(120deg, #123a58 0%, #0e2c45 60%, #0a2135 100%);
    border-bottom: 1px solid #eaf1f624;
    align-items: center;
    gap: 8px;
    height: 52px;
    padding: 0 10px;
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    box-shadow: 0 4px 16px -6px #1c191580;
  }

  .app-shell--docked {
    padding-bottom: calc(58px + env(safe-area-inset-bottom, 0px));
  }

  html, body, .app-shell, .app-shell--docked, .app-main {
    scroll-padding-top: 8px;
  }

  .app-main.app-main--bleed {
    height: calc(100dvh - 58px - env(safe-area-inset-bottom, 0px));
  }
}

.bottomnav {
  display: none;
}

@media (max-width: 1023px) {
  .bottomnav {
    z-index: 60;
    height: auto;
    min-height: 58px;
    padding: 4px 4px max(4px, env(safe-area-inset-bottom, 0px));
    background: linear-gradient(0deg, #0a2135 0%, #123a58 100%);
    border-top: 1px solid #eaf1f629;
    grid-auto-columns: 1fr;
    grid-auto-flow: column;
    align-items: stretch;
    display: grid;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    box-shadow: 0 -4px 16px -6px #1c191580;
  }
}

.bottomnav-link {
  cursor: pointer;
  color: #9fb6c6;
  -webkit-tap-highlight-color: transparent;
  background: none;
  border: none;
  border-radius: 12px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 3px;
  min-width: 0;
  margin: 2px 1px 0;
  font-family: Inter Tight, system-ui, sans-serif;
  font-size: 10.5px;
  font-weight: 700;
  text-decoration: none;
  transition: color .12s, background .12s;
  display: flex;
  position: relative;
}

.bottomnav-link svg {
  flex: none;
  width: 20px;
  height: 20px;
}

.bottomnav-link span {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
}

.bottomnav-link:hover {
  color: #eaf1f6;
}

.bottomnav-link.active {
  color: #22b8cf;
  background: #22b8cf1f;
}

.bottomnav-link.active svg {
  filter: drop-shadow(0 0 6px #22b8cf66);
}

.bottomnav-link.active:before {
  content: "";
  background: #22b8cf;
  border-radius: 0 0 3px 3px;
  width: 26px;
  height: 3px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.bottomnav-link:focus-visible {
  border-radius: 8px;
  outline: none;
  box-shadow: inset 0 0 0 2px #22b8cfb3;
}

.bottomnav-ico {
  border: 1px solid #0000;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  transition: background .12s, border-color .12s;
  display: inline-flex;
}

.bottomnav-link.bottomnav-action .bottomnav-ico {
  background: #22b8cf29;
  border-color: #22b8cf47;
}

.bottomnav-link.bottomnav-action .bottomnav-ico svg {
  width: 23px;
  height: 23px;
}

.bottomnav-link.bottomnav-action span {
  font-weight: 800;
}

@media (max-width: 380px) {
  .bottomnav-link {
    gap: 2px;
    font-size: 9.5px;
  }

  .mtopbar-title {
    font-size: 14px;
  }
}

/* [project]/styles/core/globals.css [app-client] (css) */
*, :before, :after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  width: 100%;
  max-width: 100vw;
  min-height: 100dvh;
  color: var(--da-text-primary);
  background: var(--app-page-bg, var(--hub-page-bg, linear-gradient(135deg, #f7f8f8 0%, #eff2f2 100%)));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizelegibility;
  font-family: DM Sans, Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  overflow-x: clip;
}

html {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  overscroll-behavior-y: contain;
}

button, input, select, textarea {
  font-family: inherit;
}

button {
  cursor: pointer;
  background: none;
  border: none;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  display: block;
}

:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #0891b2;
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

::selection {
  color: var(--da-text-primary);
  background: #0891b24d;
}

html[data-fontscale="xs"] {
  zoom: .8;
}

html[data-fontscale="sm"] {
  zoom: .9;
}

html[data-fontscale="lg"] {
  zoom: 1.12;
}

html[data-fontscale="xl"] {
  zoom: 1.24;
}

html.da-clamp-zoom[data-fontscale="xs"], html.da-clamp-zoom[data-fontscale="sm"] {
  zoom: 1;
}

.da-guide-target {
  outline-offset: 4px;
  border-radius: 14px;
  animation: 1.6s ease-in-out infinite da-guide-pulse;
  outline: 3px solid #f59e0b !important;
}

@keyframes da-guide-pulse {
  0%, 100% {
    box-shadow: 0 0 #f59e0b73;
  }

  50% {
    box-shadow: 0 0 0 10px #f59e0b00;
  }
}

@media (prefers-reduced-motion: reduce) {
  .da-guide-target {
    animation: none;
  }
}

/*# sourceMappingURL=_0xt45-4._.css.map*/