/**
 * TenantVista classic surface (pre-modular)
 * Soft cards, readable type — no OS/modular chrome
 */
:root {
  --rt-brand: #0f766e;
  --rt-brand-deep: #0d5f5a;
  --rt-brand-soft: #ccfbf1;
  --rt-ink: #0f172a;
  --rt-muted: #64748b;
  --rt-line: #e2e8f0;
  --rt-surface: #ffffff;
  --rt-canvas: #f1f5f9;
  --rt-radius: 12px;
  --rt-radius-sm: 8px;
  --rt-shadow: 0 1px 3px rgba(15, 23, 42, 0.08), 0 4px 12px rgba(15, 23, 42, 0.04);
}

.rt-os-shell {
  background: var(--rt-canvas) !important;
  color: var(--rt-ink) !important;
}

.rt-skin-card,
.rt-os-shell .bg-white {
  background: #fff !important;
  border: 1px solid var(--rt-line) !important;
  border-radius: var(--rt-radius) !important;
  box-shadow: var(--rt-shadow) !important;
}

.rt-stat-card {
  border-radius: var(--rt-radius) !important;
  box-shadow: var(--rt-shadow) !important;
  min-height: 7.25rem !important;
  height: 100% !important;
}

.rt-skin-btn,
.rt-os-shell button.rt-skin-btn,
.rt-os-shell button[type="button"],
.rt-os-shell button[type="submit"] {
  border-radius: var(--rt-radius-sm) !important;
  font-weight: 700 !important;
}

.rt-skin-btn-primary {
  background: var(--rt-brand) !important;
  color: #fff !important;
  border: 1px solid var(--rt-brand-deep) !important;
}
.rt-skin-btn-secondary {
  background: #fff !important;
  color: var(--rt-ink) !important;
  border: 1px solid #cbd5e1 !important;
}
.rt-skin-btn-accent {
  background: #f59e0b !important;
  color: #1c1917 !important;
  border: 1px solid #d97706 !important;
}
.rt-skin-btn-danger {
  background: #e11d48 !important;
  color: #fff !important;
}

.rt-os-shell input,
.rt-os-shell select,
.rt-os-shell textarea {
  border-radius: var(--rt-radius-sm) !important;
  border: 1px solid #cbd5e1 !important;
  background: #fff !important;
}

.rt-tab-strip {
  background: #fff !important;
  border: 1px solid var(--rt-line) !important;
  border-radius: var(--rt-radius) !important;
  padding: 0.25rem !important;
}
.rt-tab-strip > button {
  border-radius: var(--rt-radius-sm) !important;
}

.rt-ai-assist,
.rt-viper-card {
  border-radius: var(--rt-radius) !important;
  text-align: left !important;
  color: #0f172a !important;
}
.rt-viper-title { color: #020617 !important; font-weight: 800 !important; }
.rt-viper-body { color: #1e293b !important; }
.rt-ai-assist-banner,
.rt-skin-viper {
  border-radius: var(--rt-radius) !important;
}

.rt-bottom-nav {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 90 !important;
  background: #fff !important;
  border: 1px solid var(--rt-line) !important;
  border-bottom: none !important;
  box-shadow: 0 -4px 16px rgba(15, 23, 42, 0.06) !important;
  border-radius: 16px 16px 0 0 !important;
}

.rt-alerts-btn { overflow: visible !important; }
.rt-alerts-count {
  display: flex !important;
  visibility: visible !important;
  z-index: 30 !important;
}

/* Dialogs */
body > .rt-overlay-root,
.rt-overlay-root[data-rt-open="1"] {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10000 !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
.rt-modal-sheet,
.rt-overlay-sheet {
  background: #fff !important;
  border-radius: 16px 16px 0 0 !important;
  color: #0f172a !important;
}
@media (min-width: 640px) {
  .rt-modal-sheet,
  .rt-overlay-sheet {
    border-radius: 16px !important;
  }
}

.rt-sheet-handle {
  padding: 1.1rem 1.5rem 1rem !important;
}
.rt-mkt-brand-bar {
  padding: 1.25rem 1.5rem !important;
}

.rt-rank-insignia {
  display: inline-block !important;
  flex-shrink: 0 !important;
}

.rt-btn-label {
  display: inline !important;
  color: inherit !important;
  opacity: 1 !important;
}

.rt-status-badge {
  cursor: pointer;
}

/* Marketplace contrast */
.rt-mkt-shell .rt-skin-btn-primary {
  background: #14b8a6 !important;
  color: #042f2e !important;
  font-weight: 800 !important;
}


/* BUTTON ONE SIZE — labels fit inside */
.rt-os-shell .rt-skin-btn,
.rt-os-shell button.rt-skin-btn,
.rt-os-shell button[type="button"],
.rt-os-shell button[type="submit"],
.rt-os-shell a.rt-skin-btn,
.rt-mkt-shell button,
.rt-mkt-fullscreen button,
.rt-bottom-nav-item,
.rt-tab-strip > button {
  font-size: 0.875rem !important; /* 14px */
  line-height: 1.25 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100%;
}
.rt-btn-label {
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100%;
}
.rt-skin-btn-sm,
.rt-skin-btn-md,
.rt-skin-btn-lg {
  font-size: 0.875rem !important;
}
.rt-os-shell .text-xs.font-semibold.px-3,
.rt-os-shell button.text-xs {
  font-size: 0.875rem !important;
}
/* Bottom nav labels slightly smaller but consistent */
.rt-bottom-nav-label {
  font-size: 0.6875rem !important;
  line-height: 1.1 !important;
}


/* TAB STRIP CHIPS */
.rt-tab-strip-track {
  display: flex !important;
  gap: 0.4rem !important;
  overflow-x: auto !important;
  padding: 0.35rem !important;
  background: #fff !important;
  border-radius: 12px !important;
  border: 1px solid #e2e8f0 !important;
}
.rt-tab-chip {
  flex: 0 0 auto !important;
  border-radius: 999px !important;
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  padding: 0.45rem 0.85rem !important;
  min-height: 40px !important;
  border: 1.5px solid #cbd5e1 !important;
  background: #f8fafc !important;
  color: #0f172a !important;
}
.rt-tab-chip-active {
  background: #0f766e !important;
  color: #fff !important;
  border-color: #0d5f5a !important;
}
.rt-tab-chip-label {
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
}


/* XP THEME v343 */
.rt-xp-page-hero {
  background: linear-gradient(145deg, #0f766e 0%, #115e59 45%, #0f172a 100%) !important;
  border-radius: 16px !important;
  color: #fff !important;
}
.rt-xp-headbar {
  border: 1px solid #99f6e4 !important;
  background: linear-gradient(135deg, #f0fdfa, #fff) !important;
  border-radius: 16px !important;
}
.rt-xp-level-plate {
  background: linear-gradient(145deg, #0f766e, #0d5f5a) !important;
}
.rt-level-path-item.is-you {
  border-color: #14b8a6 !important;
  background: #f0fdfa !important;
}
.rt-tab-chip-active {
  background: #0f766e !important;
  color: #fff !important;
}
.rt-bottom-nav-item.is-active {
  color: #0f766e !important;
}

/* ALERTS COUNT CONTAINED */
.rt-alerts-count {
  box-sizing: border-box !important;
  min-width: 1.25rem !important;
  height: 1.25rem !important;
  max-width: 2rem !important;
  padding: 0 5px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

/* MKT SHELL v344 */
.rt-mkt-shell { z-index: 11050 !important; position: fixed !important; inset: 0 !important; }
html.rt-mkt-open .rt-bottom-nav,
html.rt-mkt-open .rt-app-header { display: none !important; }

/* ALERTS RED CIRCLE v344.1 */
.rt-alerts-count {
  background: #ef4444 !important;
  color: #fff !important;
  border-radius: 50% !important;
  border: 2px solid #fff !important;
  width: 1.35rem !important;
  height: 1.35rem !important;
  min-width: 1.35rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.4) !important;
}
.rt-alerts-count.is-cold { opacity: 0.55 !important; }
