/*! IMO Helper Precision R9.6.6
 * Additive UI layer. Keeps the original page order, chat engine and routers.
 */

:root {
  --r9-purple: #6d4aff;
  --r9-purple-2: #8a6bff;
  --r9-blue: #3c8cff;
  --r9-mint: #55e0b4;
  --r9-gold: #ffcf5a;
  --r9-danger: #ff655f;
  --r9-ink: #f7fff5;
  --r9-muted: rgba(244, 255, 241, 0.7);
  --r9-panel: #062610;
}

body:not([data-view="chat"]) #bottomNav,
body[data-view="intro"] #bottomNav,
body[data-view="setup"] #bottomNav {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body[data-view="chat"] #bottomNav {
  left: 10px !important;
  right: 10px !important;
  /*
   * The established 0704q shell already moves #composer upward while this
   * reel is open.  The reel itself must stay in the vacated bottom slot.
   * Placing both at 68px made all 12 commands exist but sit underneath the
   * higher-z-index composer.
   */
  bottom: 6px !important;
  height: 54px !important;
  align-items: center !important;
  gap: 5px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  touch-action: pan-x !important;
  scroll-snap-type: x proximity !important;
  overscroll-behavior-x: contain !important;
  padding: 4px 5px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(1, 29, 11, 0.92), rgba(0, 13, 5, 0.94)) !important;
  border: 1px solid rgba(118, 255, 45, 0.17) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.2) !important;
  backdrop-filter: blur(12px) !important;
}

body[data-view="chat"]:not(.imo-bottom-open-0704q) #bottomNav {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(12px) !important;
}

body[data-view="chat"].imo-bottom-open-0704q #bottomNav {
  display: flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

/* Keep every preserved 0704 navigation variant in that same bottom slot. */
html.imo-real-tour-0704q body[data-view="chat"] #bottomNav.bottom-nav,
html.imo-real-tour-0704m body[data-view="chat"] #bottomNav.bottom-nav,
html.imo-real-tour-0704l body[data-view="chat"] #bottomNav.bottom-nav {
  bottom: 6px !important;
  height: 54px !important;
}

body[data-view="chat"] #bottomNav .r9-bottom-quick {
  flex: 0 0 72px !important;
  width: 72px !important;
  min-width: 72px !important;
  height: 46px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 21px 14px !important;
  place-items: center !important;
  gap: 1px !important;
  padding: 4px 1px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  color: rgba(246, 255, 242, 0.76) !important;
  box-shadow: none !important;
  scroll-snap-align: start !important;
}

body[data-view="chat"] #bottomNav .r9-bottom-quick .r9-bottom-quick-icon {
  display: block !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

body[data-view="chat"] #bottomNav .r9-bottom-quick b {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  color: inherit !important;
  font-size: 9.5px !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
  letter-spacing: -0.05em !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body[data-view="chat"] #bottomNav .r9-bottom-quick.active,
body[data-view="chat"] #bottomNav .r9-bottom-quick:active,
body[data-view="chat"] #bottomNav .r9-bottom-quick:focus-visible {
  background: linear-gradient(150deg, var(--green), #52d91b) !important;
  color: #031406 !important;
  outline: none !important;
  box-shadow: 0 6px 18px rgba(118, 255, 45, 0.17) !important;
}

body[data-view="chat"] #mossyRoomFixedEntry {
  left: 17px !important;
  bottom: 72px !important;
  z-index: 42 !important;
  max-width: 132px !important;
  transition: opacity 0.16s ease, transform 0.16s ease !important;
}

body[data-view="chat"] #mossyRoomFixedEntry .mossy-room-chip {
  min-width: 98px !important;
  height: 34px !important;
  padding: 0 13px !important;
  border: 1px solid rgba(138, 107, 255, 0.9) !important;
  background: linear-gradient(135deg, #7c57ff, #5d36ea) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(77, 42, 193, 0.35) !important;
}

body[data-view="chat"] #mossyRoomFixedEntry .mossy-room-chip::before {
  content: "🤝";
  margin-right: 5px;
}

body[data-view="chat"] #feed {
  bottom: 76px !important;
}

body[data-view="chat"] #rightRail {
  bottom: 76px !important;
  transition: opacity 0.16s ease, transform 0.16s ease !important;
}

body[data-view="chat"]:not(.imo-right-open-0704q) #rightRail {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateX(14px) !important;
}

body[data-view="chat"].imo-right-open-0704q #rightRail {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

body[data-view="chat"].imo-bottom-open-0704q #feed {
  bottom: 134px !important;
}

body[data-view="chat"] #imoBottomNavToggle0704q,
body[data-view="chat"] #imoRightNavToggle0704q {
  display: flex !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body[data-view="chat"].imo-bottom-open-0704q #mossyRoomFixedEntry,
body[data-view="chat"].imo-right-open-0704q #mossyRoomFixedEntry {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
}

.r9-overlay {
  position: absolute;
  /*
   * The preserved R8 composer intentionally uses z-index:150.  The upgraded
   * full-phone feature surface must sit above every base-chat control.
   */
  z-index: 260 !important;
  inset: 0;
  display: none;
  overflow: hidden;
  background:
    radial-gradient(circle at 90% 4%, rgba(111, 82, 255, 0.2), transparent 34%),
    radial-gradient(circle at 4% 84%, rgba(68, 206, 154, 0.12), transparent 35%),
    linear-gradient(180deg, #062610, #001507 70%, #000b04);
  color: var(--r9-ink);
}

.r9-overlay.open {
  display: flex;
  flex-direction: column;
}

body.imo-r9-overlay-open #composer,
body.imo-r9-overlay-open #bottomNav,
body.imo-r9-overlay-open #rightRail,
body.imo-r9-overlay-open #mossyRoomFixedEntry,
body.imo-r9-overlay-open #imoBottomNavToggle0704q,
body.imo-r9-overlay-open #imoRightNavToggle0704q {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.r9-overlay__header {
  flex: 0 0 auto;
  min-height: 70px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 38px 42px;
  align-items: center;
  gap: 9px;
  padding: 12px 13px 10px;
  border-bottom: 1px solid rgba(118, 255, 45, 0.16);
  background: rgba(0, 21, 7, 0.75);
  backdrop-filter: blur(14px);
}

.r9-overlay__headcopy {
  min-width: 0;
}

.r9-overlay__eyebrow {
  display: none;
}

.r9-overlay__title {
  margin: 0;
  overflow: hidden;
  color: #fff;
  font-size: 18px;
  line-height: 1.15;
  font-weight: 1000;
  letter-spacing: -0.045em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.r9-icon-btn {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(118, 255, 45, 0.35);
  border-radius: 999px;
  background: rgba(0, 37, 13, 0.8);
  color: #fff;
  font-size: 21px;
  font-weight: 1000;
}

.r962-help-trigger {
  width: 36px;
  height: 36px;
  border-color: rgba(169, 143, 255, 0.48);
  color: #d8ceff;
  font-size: 16px;
}

.r962-help-trigger[hidden] {
  visibility: hidden;
  pointer-events: none;
}

.r9-overlay__body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 14px 14px 26px;
  scrollbar-width: none;
}

.r9-overlay__body::-webkit-scrollbar {
  display: none;
}

.r962-first-tip {
  min-height: 44px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 28px;
  align-items: center;
  gap: 9px;
  padding: 8px 8px 8px 10px;
  border: 1px solid rgba(118, 255, 45, 0.2);
  border-radius: 16px;
  background: rgba(3, 49, 18, 0.7);
}

.r962-first-tip[hidden] {
  display: none !important;
}

.r962-tip-avatar,
.r962-aunt-mark {
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: linear-gradient(145deg, #7d59ff, #5232ca);
  color: #fff;
  font-size: 9px;
  font-weight: 1000;
  letter-spacing: 0.03em;
}

.r962-tip-avatar {
  width: 32px;
  height: 32px;
}

.r962-first-tip p {
  display: grid;
  gap: 2px;
  margin: 0;
  color: rgba(244, 255, 241, 0.82);
  font-size: 10.5px;
  line-height: 1.35;
  font-weight: 760;
}

.r962-first-tip p b {
  color: #87ff50;
  font-size: 9.5px;
  font-weight: 1000;
}

.r962-first-tip button {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(244, 255, 241, 0.62);
  font-size: 18px;
}

.r962-first-card {
  margin-top: 0 !important;
}

.r962-first-tip:not([hidden]) + .r962-first-card {
  margin-top: 9px !important;
}

.r962-first-section {
  margin-top: 10px !important;
}

.r962-help-sheet {
  position: absolute;
  z-index: 20;
  inset: 0;
}

.r962-help-sheet[hidden] {
  display: none !important;
}

.r962-help-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(0, 8, 3, 0.62);
  backdrop-filter: blur(5px);
}

.r962-help-panel {
  position: absolute;
  right: 12px;
  bottom: 12px;
  left: 12px;
  padding: 14px;
  border: 1px solid rgba(138, 107, 255, 0.55);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0, rgba(126, 92, 255, 0.2), transparent 36%),
    linear-gradient(155deg, #104b26, #031b0d);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.46);
  transform: translateY(18px);
  opacity: 0;
  transition: transform 0.16s ease, opacity 0.16s ease;
}

.r962-help-sheet.open .r962-help-panel {
  transform: none;
  opacity: 1;
}

.r962-help-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.r962-aunt-mark {
  width: 36px;
  height: 28px;
}

.r962-help-x {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(118, 255, 45, 0.25);
  border-radius: 999px;
  background: rgba(0, 20, 7, 0.7);
  color: #fff;
  font-size: 19px;
}

.r962-help-panel h3 {
  margin: 10px 0 0;
  color: #fff;
  font-size: 17px;
  line-height: 1.3;
  font-weight: 1000;
  letter-spacing: -0.035em;
}

.r962-help-panel p {
  margin: 7px 0 0;
  color: rgba(244, 255, 241, 0.78);
  font-size: 12px;
  line-height: 1.55;
  font-weight: 740;
}

.r962-help-done {
  width: 100%;
  min-height: 42px;
  margin-top: 13px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(145deg, #80ff3d, #5bd920);
  color: #031406;
  font-size: 12px;
  font-weight: 1000;
}

.r9-hero-card,
.r9-card,
.r9-form-card,
.r9-safety-card {
  border: 1px solid rgba(136, 255, 93, 0.2);
  border-radius: 22px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.04), transparent 48%),
    rgba(5, 48, 19, 0.83);
  box-shadow: 0 15px 36px rgba(0, 0, 0, 0.18);
}

.r9-hero-card {
  padding: 17px;
  border-color: rgba(138, 107, 255, 0.44);
  background:
    radial-gradient(circle at 92% 12%, rgba(153, 126, 255, 0.24), transparent 40%),
    linear-gradient(145deg, rgba(44, 30, 109, 0.72), rgba(4, 48, 19, 0.9));
}

.r9-hero-card h3,
.r9-card h3,
.r9-form-card h3,
.r9-safety-card h3 {
  margin: 0;
  color: #fff;
  font-size: 16px;
  line-height: 1.3;
  font-weight: 1000;
  letter-spacing: -0.035em;
}

.r9-hero-card p,
.r9-card p,
.r9-form-card p,
.r9-safety-card p {
  margin: 7px 0 0;
  color: var(--r9-muted);
  font-size: 12.5px;
  line-height: 1.55;
  font-weight: 740;
}

.r9-card,
.r9-form-card,
.r9-safety-card {
  margin-top: 11px;
  padding: 14px;
}

.r9-safety-card {
  border-color: rgba(255, 207, 90, 0.43);
  background: linear-gradient(145deg, rgba(93, 62, 8, 0.45), rgba(4, 42, 16, 0.88));
}

.r9-danger-card {
  border-color: rgba(255, 101, 95, 0.48);
  background: linear-gradient(145deg, rgba(107, 24, 22, 0.55), rgba(3, 37, 14, 0.9));
}

.r9-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 23px;
  padding: 0 9px;
  border-radius: 999px;
  background: rgba(126, 92, 255, 0.18);
  color: #c8baff;
  font-size: 9.5px;
  font-weight: 1000;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.r9-section-title {
  margin: 18px 2px 9px;
  color: #fff;
  font-size: 14px;
  font-weight: 1000;
  letter-spacing: -0.03em;
}

.r9-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.r9-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}

.r9-feature-btn,
.r9-category-btn {
  min-height: 78px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(118, 255, 45, 0.22);
  border-radius: 18px;
  background: rgba(0, 36, 13, 0.78);
  color: #fff;
  text-align: left;
}

.r9-category-btn {
  min-height: 66px;
  align-items: center;
  justify-content: center;
  padding: 8px 4px;
  text-align: center;
}

.r9-feature-btn:active,
.r9-category-btn:active,
.r9-action:active {
  transform: scale(0.985);
}

.r9-feature-btn.active,
.r9-category-btn.active {
  border-color: #9b80ff;
  background: linear-gradient(145deg, rgba(111, 74, 255, 0.78), rgba(42, 32, 110, 0.78));
}

.r9-feature-btn .r9-emoji,
.r9-category-btn .r9-emoji {
  font-size: 23px;
  line-height: 1;
}

.r9-feature-btn b,
.r9-category-btn b {
  font-size: 12px;
  line-height: 1.2;
  font-weight: 950;
}

.r9-category-btn b {
  font-size: 10.5px;
}

.r9-field {
  margin-top: 10px;
}

.r9-field label,
.r9-field-label {
  display: block;
  margin: 0 0 6px;
  color: rgba(244, 255, 241, 0.76);
  font-size: 11px;
  font-weight: 900;
}

.r9-input,
.r9-select,
.r9-textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(118, 255, 45, 0.3);
  border-radius: 15px;
  outline: 0;
  background: rgba(0, 22, 8, 0.82);
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 780;
  padding: 10px 12px;
}

.r9-input::placeholder,
.r9-textarea::placeholder {
  color: rgba(244, 255, 241, 0.4);
}

.r9-input:focus,
.r9-select:focus,
.r9-textarea:focus {
  border-color: #9b80ff;
  box-shadow: 0 0 0 3px rgba(126, 92, 255, 0.15);
}

.r9-textarea {
  min-height: 80px;
  resize: vertical;
}

.r9-chips,
.r9-actions,
.r9-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.r9-chips {
  margin-top: 9px;
}

.r9-chip {
  min-height: 31px;
  padding: 0 10px;
  border: 1px solid rgba(118, 255, 45, 0.25);
  border-radius: 999px;
  background: rgba(0, 25, 8, 0.8);
  color: rgba(246, 255, 242, 0.86);
  font-size: 10.5px;
  font-weight: 900;
}

.r9-chip.active {
  border-color: #9b80ff;
  background: #7654f7;
  color: #fff;
}

.r9-actions {
  margin-top: 12px;
}

.r9-action {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid rgba(118, 255, 45, 0.4);
  border-radius: 999px;
  background: rgba(0, 34, 12, 0.84);
  color: #fff;
  font-size: 11.5px;
  font-weight: 1000;
}

.r9-action.primary {
  border-color: #78f839;
  background: linear-gradient(145deg, #81ff3d, #5edb23);
  color: #031406;
}

.r9-action.purple {
  border-color: #9b80ff;
  background: linear-gradient(145deg, #805cff, #5d37e9);
  color: #fff;
}

.r9-action.danger {
  border-color: rgba(255, 101, 95, 0.75);
  background: rgba(118, 25, 22, 0.78);
  color: #fff;
}

.r9-action[disabled] {
  cursor: not-allowed;
  opacity: 0.38;
  filter: grayscale(0.25);
}

.r9-list {
  display: grid;
  gap: 10px;
}

.r9-list-card {
  position: relative;
  padding: 13px;
  border: 1px solid rgba(118, 255, 45, 0.2);
  border-radius: 20px;
  background: rgba(3, 45, 17, 0.78);
}

.r9-list-card h4 {
  margin: 0 44px 6px 0;
  color: #fff;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 1000;
}

.r9-list-card p {
  margin: 4px 0 0;
  color: var(--r9-muted);
  font-size: 11.5px;
  line-height: 1.48;
  font-weight: 760;
}

.r9-list-card .r9-count {
  position: absolute;
  right: 12px;
  top: 12px;
  min-width: 36px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(126, 92, 255, 0.2);
  color: #c9bbff;
  font-size: 10px;
  font-weight: 1000;
}

.r9-meta {
  margin-top: 8px;
  color: rgba(244, 255, 241, 0.7);
  font-size: 10.5px;
  font-weight: 850;
}

.r9-check {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 8px;
  align-items: start;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(118, 255, 45, 0.16);
  border-radius: 15px;
  background: rgba(0, 24, 8, 0.68);
  color: rgba(246, 255, 242, 0.87);
  font-size: 11.5px;
  line-height: 1.45;
  font-weight: 780;
}

.r9-check input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #7d59ff;
}

.r95-field-help {
  margin-top: 7px;
  padding: 8px 10px;
  border: 1px solid rgba(116, 181, 255, 0.17);
  border-radius: 12px;
  background: rgba(26, 64, 102, 0.2);
  color: rgba(232, 244, 255, 0.8);
  font-size: 10.5px;
  line-height: 1.45;
  font-weight: 760;
}

.r95-field-help[data-state="locating"],
.r95-field-help[data-state="check"] {
  border-color: rgba(255, 207, 90, 0.34);
  background: rgba(98, 68, 8, 0.24);
  color: #ffe9a9;
}

.r95-field-help[data-state="located"],
.r95-field-help[data-state="confirmed"] {
  border-color: rgba(85, 224, 180, 0.42);
  background: rgba(26, 110, 81, 0.23);
  color: #b9ffe8;
}

.r95-field-help[data-state="denied"],
.r95-field-help[data-state="unavailable"] {
  border-color: rgba(255, 155, 93, 0.34);
  background: rgba(105, 45, 18, 0.24);
  color: #ffd1b5;
}

.r95-intelligence-card {
  margin-top: 11px;
  padding: 14px;
  border: 1px solid rgba(138, 107, 255, 0.42);
  border-radius: 20px;
  background:
    radial-gradient(circle at 90% 10%, rgba(126, 92, 255, 0.24), transparent 38%),
    linear-gradient(145deg, rgba(33, 48, 99, 0.72), rgba(5, 58, 34, 0.72));
}

.r95-intelligence-card h3 {
  margin: 7px 0 0;
  color: #fff;
  font-size: 14px;
  line-height: 1.32;
  font-weight: 1000;
}

.r95-intelligence-card p {
  margin: 6px 0 0;
  color: rgba(244, 255, 241, 0.78);
  font-size: 11px;
  line-height: 1.5;
  font-weight: 760;
}

.r95-intelligence-flow {
  display: grid;
  grid-template-columns: 34px 12px 34px 12px 34px 12px 34px;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin-top: 11px;
}

.r95-intelligence-flow span {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 11px;
  background: rgba(0, 18, 8, 0.55);
  color: #fff;
  font-size: 13px;
  font-weight: 1000;
}

.r95-intelligence-flow i {
  color: rgba(255, 255, 255, 0.45);
  font-size: 10px;
  font-style: normal;
  text-align: center;
}

.r96-route-result {
  margin-top: 11px;
  padding: 15px;
  border: 1px solid rgba(126, 255, 75, 0.46);
  border-radius: 22px;
  background:
    radial-gradient(circle at 90% 0, rgba(126, 92, 255, 0.22), transparent 38%),
    linear-gradient(145deg, rgba(8, 62, 24, 0.96), rgba(0, 26, 9, 0.97));
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
}

.r96-route-result[hidden] {
  display: none !important;
}

.r96-route-result[data-state="needs_origin_confirmation"],
.r96-route-result[data-state="needs_destination_confirmation"] {
  border-color: rgba(255, 207, 90, 0.7);
}

.r96-route-result[data-state="error"] {
  border-color: rgba(255, 101, 95, 0.65);
}

.r96-aunt-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
}

.r96-aunt-avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(126, 255, 75, 0.48);
  border-radius: 15px;
  background: linear-gradient(145deg, #75f239, #3aa215);
  color: #031406;
  font-size: 10px;
  font-weight: 1000;
}

.r96-aunt-head h3 {
  margin: 7px 0 0;
  color: #fff;
  font-size: 15px;
  line-height: 1.36;
  font-weight: 1000;
  letter-spacing: -0.035em;
}

.r96-detail {
  margin: 10px 0 0;
  color: rgba(244, 255, 241, 0.76);
  font-size: 12px;
  line-height: 1.55;
  font-weight: 740;
}

.r96-candidates {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.r96-candidate {
  width: 100%;
  min-height: 58px;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid rgba(255, 207, 90, 0.42);
  border-radius: 16px;
  background: rgba(0, 28, 10, 0.82);
  color: #fff;
  text-align: left;
}

.r96-candidate b {
  font-size: 12.5px;
  font-weight: 1000;
}

.r96-candidate span {
  color: rgba(244, 255, 241, 0.66);
  font-size: 10.5px;
  line-height: 1.4;
  font-weight: 720;
}

.r96-checked-title {
  margin: 14px 0 7px;
  color: #bcaeff;
  font-size: 11px;
  font-weight: 1000;
}

.r96-facts {
  display: grid;
  gap: 6px;
}

.r96-fact {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 8px;
  padding: 8px 9px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
}

.r96-fact b {
  color: #9cf577;
  font-size: 10px;
  font-weight: 1000;
}

.r96-fact span {
  color: rgba(250, 255, 248, 0.88);
  font-size: 10.5px;
  line-height: 1.45;
  font-weight: 760;
  overflow-wrap: anywhere;
}

.r96-route-actions .r9-action {
  flex: 1 1 calc(50% - 7px);
}

.r96-thinking {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 12px;
}

.r96-thinking-dot {
  width: 12px;
  height: 12px;
  border: 2px solid rgba(126, 255, 75, 0.3);
  border-top-color: #7eff4b;
  border-radius: 999px;
  animation: r96-spin 0.8s linear infinite;
}

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

.r9-route-line {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  margin-top: 10px;
}

.r9-route-node {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: rgba(67, 142, 255, 0.18);
  color: #79b7ff;
  font-size: 14px;
}

.r9-route-copy b {
  display: block;
  color: #fff;
  font-size: 12px;
}

.r9-route-copy span {
  display: block;
  margin-top: 3px;
  color: var(--r9-muted);
  font-size: 10.5px;
  line-height: 1.4;
}

.r9-empty,
.r9-loading,
.r9-result {
  padding: 18px 14px;
  border: 1px dashed rgba(118, 255, 45, 0.25);
  border-radius: 18px;
  color: var(--r9-muted);
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.r9-result {
  border-style: solid;
  border-color: rgba(85, 224, 180, 0.4);
  background: rgba(15, 93, 67, 0.2);
  color: #dffff4;
}

.r9-ad-card {
  position: relative;
  margin: 12px 0;
  padding: 13px;
  border: 1px solid rgba(169, 143, 255, 0.44);
  border-radius: 22px;
  background:
    radial-gradient(circle at 95% 0, rgba(133, 93, 255, 0.28), transparent 40%),
    linear-gradient(150deg, rgba(34, 24, 87, 0.86), rgba(4, 49, 19, 0.88));
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22);
}

.r9-ad-label {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  padding: 0 8px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.22);
  color: rgba(255, 255, 255, 0.75);
  font-size: 9px;
  font-weight: 1000;
  letter-spacing: 0.06em;
}

.r9-ad-card h3 {
  margin: 8px 0 0;
  color: #fff;
  font-size: 14px;
  line-height: 1.3;
  font-weight: 1000;
}

.r9-ad-card p {
  margin: 6px 0 0;
  color: rgba(244, 255, 241, 0.73);
  font-size: 11.5px;
  line-height: 1.5;
  font-weight: 760;
}

.r9-ad-card .r9-actions {
  margin-top: 10px;
}

.r9-toast {
  position: absolute;
  z-index: 190;
  left: 50%;
  bottom: 82px;
  max-width: calc(100% - 34px);
  transform: translateX(-50%);
  padding: 10px 14px;
  border: 1px solid rgba(118, 255, 45, 0.4);
  border-radius: 999px;
  background: rgba(0, 25, 8, 0.96);
  color: #fff;
  font-size: 11.5px;
  font-weight: 900;
  text-align: center;
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.38);
}

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

@media (max-width: 360px) {
  body[data-view="chat"] #bottomNav {
    left: 6px !important;
    right: 6px !important;
    gap: 2px !important;
  }

  body[data-view="chat"] #bottomNav .r9-bottom-quick b {
    font-size: 8.7px !important;
  }

  .r9-grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 5px;
  }

  .r9-category-btn b {
    font-size: 9.5px;
  }
}

.r91-all-quick-grid {
  align-items: stretch;
}

.r91-all-quick {
  min-width: 0;
}

/* Member-only IMO Room discovery: scalable host cards and paging. */
.r9-discovery-filters{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.r9-discovery-summary{padding:4px 2px 8px;color:rgba(238,255,241,.68);font-size:12px}.r9-discovery-summary b{color:#8dff53;font-size:16px}.r9-host-line{display:flex;align-items:center;gap:10px;margin:0 0 12px}.r9-host-avatar{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border:1px solid rgba(126,255,72,.5);border-radius:50%;background:linear-gradient(145deg,#18552e,#073118);color:#a0ff70;font-weight:950}.r9-host-line>span:last-child{display:grid;min-width:0}.r9-host-line b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.r9-host-line small{margin-top:3px;color:rgba(230,255,235,.58);font-size:10px}.r9-meetup-discovery{border-color:rgba(92,198,104,.42)!important;background:linear-gradient(145deg,rgba(8,54,27,.94),rgba(1,26,13,.97))!important}.r9-host-profile{border-color:rgba(126,255,72,.4)!important}.r9-pagination{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 0 72px}.r9-pagination span{min-width:54px;text-align:center;color:#cce6d2;font-weight:800}.r9-pagination button{min-width:46px;justify-content:center}@media(max-width:430px){.r9-discovery-filters{grid-template-columns:1fr}.r9-host-line{margin-bottom:9px}}
