.fc-context-assistant {
  position: fixed;
  z-index: 12050;
  right: 18px;
  bottom: 18px;
  width: min(380px, calc(100vw - 36px));
  max-height: min(610px, calc(100dvh - 36px));
  overflow: auto;
  box-sizing: border-box;
  border: 1px solid #8eb6a6;
  border-left: 5px solid #227052;
  border-radius: 14px;
  background: #fff;
  color: #173e48;
  box-shadow: 0 16px 44px rgba(7, 28, 36, .24);
  font: 14px/1.48 Inter, system-ui, sans-serif;
  animation: fc-context-assistant-enter .2s ease-out;
}

.fc-context-assistant > header {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 34px;
  gap: 10px;
  align-items: center;
  padding: 14px 14px 12px;
  border-bottom: 1px solid #dce7e1;
  background: #edf8f2;
}

.fc-context-assistant > header > div { display: grid; min-width: 0; gap: 1px; }
.fc-context-assistant > header small { color: #41675b; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fc-context-assistant > header strong { overflow-wrap: anywhere; font-size: 16px; line-height: 1.25; }
.fc-context-assistant-symbol { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; background: #227052; color: #fff; font: 800 20px/1 Georgia, serif; }
.fc-context-assistant .fc-context-assistant-close { display: grid; width: 34px; min-height: 34px; padding: 0; place-items: center; border: 1px solid #aac8bb; border-radius: 8px; background: #fff; color: #173e48; font-size: 24px; font-weight: 400; line-height: 1; box-shadow: none; }
.fc-context-assistant .fc-context-assistant-close:hover,
.fc-context-assistant .fc-context-assistant-close:focus-visible { background: #dff1e8; }
.fc-context-assistant-body { display: grid; gap: 8px; padding: 15px 17px 17px; }
.fc-context-assistant-body > span { color: #527168; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.fc-context-assistant-body p,
.fc-context-assistant-body ol { margin: 0 0 6px; }
.fc-context-assistant-body ol { display: grid; gap: 7px; padding-left: 21px; }
.fc-context-assistant-current { padding: 9px 11px; border-radius: 8px; background: #fff3d9; color: #694810; font-weight: 700; }

@keyframes fc-context-assistant-enter {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .fc-context-assistant { animation: none; }
}

@media (max-width: 600px) {
  .fc-context-assistant { right: 10px; bottom: 10px; width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
}
